PackageManagementProviderResource icon indicating copy to clipboard operation
PackageManagementProviderResource copied to clipboard

Add an Environment Variable 'refresh' before installing package

Open gaelcolas opened this issue 9 years ago • 4 comments

Some packages, like RabbitMQ in the Chocolatey Repo, can have their installation customized based on Environment Variables (questionable but common method in *nix environment, and ported applications).

When using DSC and setting variables via the Environment resource (which, btw does not support [EnvironmentVariableTarget]), you'd need to restart before being able to install such package. Would it be possible to add a refresh Environment variable to the process that runs the install-package?

Would you consider a PR with the above?

Here's what the resulting configuration could look like:

        Environment RMQBase {
            Ensure            = 'Present'
            Name              = 'RABBITMQ_BASE'
            Value             = $Node.RabbitMQBase
        }

        Environment ErlangHome {
            Ensure            = 'Present'
            Name              = 'ERLANG_HOME'
            Value             = 'C:\Program Files\erl8.0'
        }

        PackageManagement RabbitMQ
        {
            Ensure            = 'present' 
            Name              = 'RabbitMQ'
            Source            = 'Chocolatey'
            DependsOn         = '[Environment]ErlangHome'
        }

The workarounds atm are: restarting, wait for next run, hack by killing session and restarting it, create custom PackageManagement resource to add the functionality...

gaelcolas avatar Jul 20 '16 14:07 gaelcolas

By the way, the core functionality should probably be provided by PackageManagement module (as in, not the DSC resource), or the Chocolatey provider. I believe this behaviour has been fixed in Chocolatey v9.10 (issue 664), but I believe we're still waiting for the full re-work of the Chocolatey provider.

gaelcolas avatar Jul 25 '16 15:07 gaelcolas

@gaelcolas. We welcome contributions from the community, i.e., accept PR. You are right. We do not have OneGet-Chocolatey provider yet.

jianyunt avatar Jul 25 '16 16:07 jianyunt

I talked with @grayzu about this, and I'm not sure about how to implement such refresh in the LCM, but would be happy to submit a PR if given a bit guidance.

gaelcolas avatar Aug 26 '16 15:08 gaelcolas

This issue was moved to OneGet/oneget#255

brywang-msft avatar Jan 12 '17 22:01 brywang-msft