Module: Climatic::Utils::SafeExec

Included in:
Climatic
Defined in:
lib/climatic/utils/safe_exec.rb

Instance Method Summary collapse

Instance Method Details

#safely_exec_code(*args, message: nil, &block) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/climatic/utils/safe_exec.rb', line 6

def safely_exec_code(*args, message: nil, &block)
  if Climatic.config[:simulate]
    Climatic.logger.puts_and_logs "[SIMULATION MODE]: #{message}" unless message.nil?
  else
    Climatic.logger.puts_and_logs message
    block.call *args
  end
end

#safely_exec_command(command, message: nil, show_output: false, log_output: true) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/climatic/utils/safe_exec.rb', line 15

def safely_exec_command(command, message: nil, show_output: false, log_output: true)
  safely_exec_code command, message: message do |cmd|
    process = Climatic::Processes::Base.new cmd
    process.show_output = show_output
    process.log_output = log_output
    process.execute
    process
  end
end