Skip to content

Commit 08e92a1

Browse files
committed
Added custom ENV for project resource
Resource now receives a new attribute env, in order to specify additional shell environment variables
1 parent 144c52d commit 08e92a1

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

providers/project.rb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,12 @@ def make_execute(cmd)
4040
optimize = new_resource.optimize_autoloader ? optimize_flag(cmd) : ''
4141
prefer_dist = new_resource.prefer_dist ? '--prefer-dist' : ''
4242
prefer_source = new_resource.prefer_source ? '--prefer-source' : ''
43+
environment = { 'COMPOSER_HOME' => Composer.home_dir(node) }.merge(new_resource.env)
4344

4445
execute "#{cmd}-composer-for-project" do
4546
cwd new_resource.project_dir
4647
command "#{node['composer']['bin']} #{cmd} --no-interaction --no-ansi #{quiet} #{dev} #{optimize} #{prefer_dist} #{prefer_source}"
47-
environment 'COMPOSER_HOME' => Composer.home_dir(node)
48+
environment environment
4849
action :run
4950
only_if 'which composer'
5051
user new_resource.user
@@ -57,11 +58,12 @@ def make_require
5758
dev = new_resource.dev ? '--dev' : '--update-no-dev'
5859
vendor = new_resource.vendor
5960
prefer_dist = new_resource.prefer_dist ? '--prefer-dist' : ''
61+
environment = { 'COMPOSER_HOME' => Composer.home_dir(node) }.merge(new_resource.env)
6062

6163
execute 'Install-composer-for-single-project' do
6264
cwd new_resource.project_dir
6365
command "#{node['composer']['bin']} require #{vendor} #{dev} #{prefer_dist}"
64-
environment 'COMPOSER_HOME' => Composer.home_dir(node)
66+
environment environment
6567
action :run
6668
only_if 'which composer'
6769
user new_resource.user
@@ -72,11 +74,12 @@ def make_require
7274

7375
def remove_vendor(cmd)
7476
vendor = new_resource.vendor
77+
environment = { 'COMPOSER_HOME' => Composer.home_dir(node) }.merge(new_resource.env)
7578

7679
execute "#{cmd}-composer-for-project" do
7780
cwd new_resource.project_dir
7881
command "#{node['composer']['bin']} remove #{vendor}"
79-
environment 'COMPOSER_HOME' => Composer.home_dir(node)
82+
environment environment
8083
action :run
8184
only_if 'which composer'
8285
end

resources/project.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
attribute :user, :kind_of => String, :default => 'root'
2020
attribute :group, :kind_of => String, :default => 'root'
2121
attribute :umask, :kind_of => [String, Fixnum], :default => 0002
22+
attribute :env, :kind_of => [Hash], :default => {}
2223

2324
def initialize(*args)
2425
super

0 commit comments

Comments
 (0)