Class: Proxy::AnsibleDirector::Actions::Meta::RunAnsibleScript

Inherits:
Dynflow::Action::Runner
  • Object
show all
Defined in:
lib/smart_proxy_ansible_director/actions/meta/run_ansible_script.rb

Instance Method Summary collapse

Instance Method Details

#plan(args) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/smart_proxy_ansible_director/actions/meta/run_ansible_script.rb', line 11

def plan(args)
  script = args['script']
  execution_environment = args['execution_environment']
  inventory = args['inventory']

  sequence do
    _pull_ee_action = plan_action ::Proxy::AnsibleDirector::Actions::PullExecutionEnvironment, {
      ee_registry_url: execution_environment
    }
    run_ansible_action = plan_action ::Proxy::AnsibleDirector::Actions::RunAnsibleNavigator, {
      mode: 'literal',
      inventory: inventory,
      playbook: script,
      execution_environment: "#{execution_environment.split('/')[-1]}:latest"
    }
    plan_action ::Proxy::Dynflow::Callback::Action,
                args[:callback],
                run_ansible_action.output
  end
end