@@ -101,8 +101,8 @@ def log_and_say(level, message, do_say = true, do_log = true)
101
101
Kafo ::KafoConfigure . logger . send ( level , message ) if do_log
102
102
end
103
103
104
- def execute! ( command , do_say = true , do_log = true )
105
- stdout_stderr , status = execute_command ( command , do_say , do_log )
104
+ def execute! ( command , do_say = true , do_log = true , extra_env = { } )
105
+ stdout_stderr , status = execute_command ( command , do_say , do_log , extra_env )
106
106
107
107
if stdout_stderr . nil?
108
108
log_and_say ( :error , "Command #{ command } not found" , do_say , do_log )
@@ -115,21 +115,21 @@ def execute!(command, do_say = true, do_log = true)
115
115
end
116
116
end
117
117
118
- def execute_as! ( user , command , do_say = true , do_log = true )
118
+ def execute_as! ( user , command , do_say = true , do_log = true , extra_env = { } )
119
119
runuser_command = "runuser -l #{ user } -c '#{ command } '"
120
- execute! ( runuser_command , do_say , do_log )
120
+ execute! ( runuser_command , do_say , do_log , extra_env )
121
121
end
122
122
123
- def execute ( command , do_say , do_log )
124
- _stdout_stderr , status = execute_command ( command , do_say , do_log )
123
+ def execute ( command , do_say , do_log , extra_env = { } )
124
+ _stdout_stderr , status = execute_command ( command , do_say , do_log , extra_env )
125
125
status
126
126
end
127
127
128
- def execute_command ( command , do_say , do_log )
128
+ def execute_command ( command , do_say , do_log , extra_env = { } )
129
129
log_and_say ( :debug , "Executing: #{ command } " , do_say , do_log )
130
130
131
131
begin
132
- stdout_stderr , status = Open3 . capture2e ( *Kafo ::PuppetCommand . format_command ( command ) )
132
+ stdout_stderr , status = Open3 . capture2e ( *Kafo ::PuppetCommand . format_command ( command , extra_env ) )
133
133
rescue Errno ::ENOENT
134
134
return [ nil , false ]
135
135
end
0 commit comments