class ForemanAnsibleCore::RemoteExecutionCore::AnsibleRunner

Takes an inventory and runs it through REXCore CommandRunner

Constants

DEFAULT_REFRESH_INTERVAL

Public Class Methods

new(options) click to toggle source
Calls superclass method
# File lib/foreman_ansible_core/remote_execution_core/ansible_runner.rb, line 7
def initialize(options)
  super(options)
  @playbook_runner = ForemanAnsibleCore::PlaybookRunner.new(
    options['ansible_inventory'],
    options['script'],
    options
  )
end

Public Instance Methods

fill_continuous_output(continuous_output) click to toggle source
# File lib/foreman_ansible_core/remote_execution_core/ansible_runner.rb, line 26
def fill_continuous_output(continuous_output)
  delegated_output.fetch('result', []).each do |raw_output|
    continuous_output.add_raw_output(raw_output)
  end
rescue StandardError => e
  continuous_output.add_exception(_('Error loading data from proxy'), e)
end
refresh() click to toggle source
Calls superclass method
# File lib/foreman_ansible_core/remote_execution_core/ansible_runner.rb, line 34
def refresh
  @command_out = @playbook_runner.command_out
  @command_in = @playbook_runner.command_in
  @command_pid = @playbook_runner.command_pid
  super
end
start() click to toggle source
# File lib/foreman_ansible_core/remote_execution_core/ansible_runner.rb, line 16
def start
  @playbook_runner.start
rescue StandardError => e
  logger.error(
    'error while initalizing command'           " #{e.class} #{e.message}:\n #{e.backtrace.join("\n")}"
  )
  publish_exception('Error initializing command', e)
end