Ticket #1007: exec.rb.patch
| File exec.rb.patch, 2.4 kB (added by Fujin, 11 months ago) |
|---|
-
a/lib/puppet/type/exec.rb
old new 228 228 end 229 229 end 230 230 231 newparam(:env ) do231 newparam(:environment) do 232 232 desc "Any additional environment variables you want to set for a 233 233 command. Note that if you use this to set PATH, it will override 234 234 the ``path`` attribute. Multiple environment variables should be … … 554 554 begin 555 555 # Do our chdir 556 556 Dir.chdir(dir) do 557 env = {}557 environment = {} 558 558 559 559 if self[:path] 560 env [:PATH] = self[:path].join(":")560 environment[:PATH] = self[:path].join(":") 561 561 end 562 562 563 if envlist = self[:env ]563 if envlist = self[:environment] 564 564 envlist = [envlist] unless envlist.is_a? Array 565 565 envlist.each do |setting| 566 566 if setting =~ /^(\w+)=((.|\n)+)$/ 567 567 name = $1 568 568 value = $2 569 if env .include? name569 if environment.include? name 570 570 warning( 571 571 "Overriding environment setting '%s' with '%s'" % 572 572 [name, value] 573 573 ) 574 574 end 575 env [name] = value575 environment[name] = value 576 576 else 577 warning "Cannot understand env setting %s" % setting.inspect577 warning "Cannot understand environment setting %s" % setting.inspect 578 578 end 579 579 end 580 580 end 581 581 582 withenv env do582 withenv environment do 583 583 Timeout::timeout(self[:timeout]) do 584 584 output, status = Puppet::Util::SUIDManager.run_and_capture( 585 585 [command], self[:user], self[:group]