diff --git a/providers/pip.rb b/providers/pip.rb index 268524c..53371e7 100644 --- a/providers/pip.rb +++ b/providers/pip.rb @@ -151,7 +151,10 @@ def remove_package(version) def pip_cmd(subcommand, version='') options = { :timeout => new_resource.timeout, :user => new_resource.user, :group => new_resource.group } - options[:environment] = { 'HOME' => ::File.expand_path("~#{new_resource.user}") } if new_resource.user + environment = Hash.new + environment.merge!({ 'HOME' => ::File.expand_path("~#{new_resource.user}") }) if new_resource.user + environment.merge!(new_resource.environment) if new_resource.environment + options[:environment] = environment shell_out!("#{which_pip(new_resource)} #{subcommand} #{new_resource.options} #{new_resource.package_name}#{version}", options) end diff --git a/resources/pip.rb b/resources/pip.rb index cccb224..1475b3a 100644 --- a/resources/pip.rb +++ b/resources/pip.rb @@ -34,3 +34,4 @@ def initialize(*args) attribute :user, :regex => Chef::Config[:user_valid_regex] attribute :group, :regex => Chef::Config[:group_valid_regex] attribute :options, :kind_of => String, :default => '' +attribute :environment, :kind_of => Hash, :default => {}