Class: ForemanAnsible::AnsibleProvider

Inherits:
RemoteExecutionProvider
  • Object
show all
Defined in:
app/models/foreman_ansible/ansible_provider.rb

Overview

Provider for RemoteExecution that allows to run Ansible playbooks. Read the source of other RemoteExecution providers for more.

Class Method Summary collapse

Class Method Details

.humanized_nameObject



15
16
17
# File 'app/models/foreman_ansible/ansible_provider.rb', line 15

def humanized_name
  'Ansible'
end

.proxy_command_options(template_invocation, host) ⇒ Object



19
20
21
22
23
24
25
26
27
28
# File 'app/models/foreman_ansible/ansible_provider.rb', line 19

def proxy_command_options(template_invocation, host)
  super(template_invocation, host).merge(
    'ansible_inventory' => ::ForemanAnsible::InventoryCreator.new(
      [host], template_invocation
    ).to_hash.to_json,
    :remote_execution_command => ansible_command?(
      template_invocation.template
    )
  )
end

.ssh_key_passphrase(host) ⇒ Object



11
12
13
# File 'app/models/foreman_ansible/ansible_provider.rb', line 11

def ssh_key_passphrase(host)
  host_setting(host, :remote_execution_ssh_key_passphrase)
end

.ssh_password(host) ⇒ Object



7
8
9
# File 'app/models/foreman_ansible/ansible_provider.rb', line 7

def ssh_password(host)
  host_setting(host, :remote_execution_ssh_password)
end

.supports_effective_user?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'app/models/foreman_ansible/ansible_provider.rb', line 30

def supports_effective_user?
  true
end