Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Creates a playbook YML file from the playbook script input and runs this playbook.

...

Input NameInput CodeRequiredDescription
Ansible HomeFDANS_INP_ANSIBLE_HOMENoAbsolute directory path where Ansible is installed.
Playbook ScriptFDANS_INP_PLAYBOOK_SCRIPTYesPlaybook YML script code.
Inventory FileFDANS_INP_INVENTORYNoAbsolute path to the inventory file to use with the playbook invocation. (CLI arg: -i)
Become MethodFDANS_INP_BECOME_METHODNo

Privilege escalation method to use. (CLI arg: --become-method)

valid choices: [ sudo | su | pbrun | pfexec | doas | dzdo | ksu | runas | machinectl ]

If privilege escalation method is selected -b CLI argument will be passed.

Become UserFDANS_INP_BECOME_USERNo

Run operations as. (CLI arg: --become-user)

If value is provided -b CLI argument will be passed.

Extra VariablesFDANS_INP_EXTRA_VARSNo

Additional variables as key=value, JSON text, or a JSON/YML file. Formatted as key=value. If passing a JSON/YML file you must use an @ before the file name. One pair per line (CLI arg: -e)

Key/Value Example: var1=val1 var2=val2

JSON Example: {"version":"1.23.45","other_variable":"foo"}

JSON/YML File Example: @some_file.json

Parallel ProcessesFDANS_INP_FORKSNoNumber of parallel processes to use. (CLI arg: -f)
Host LimitFDANS_INP_LIMITNoLimiting of the selected hosts to an additional pattern. Outputs a list of matching hosts. (CLI arg: -l)
Skip TagsFDANS_INP_SKIPPED_TAGSNoOnly run plays and tasks whose tags do not match these values. (CLI arg: --skip-tags)
Start at TaskFDANS_INP_START_AT_TASKNoStart the playbook at the task matching this name. (CLI arg: --start-at-task)
Run TagsFDANS_INP_TAGSNoOnly run plays and tasks tagged with these values. (CLI arg: -t)

...

This operations delegates the execution to the workflow developer to decide.

Example

Below you can see an example of inputs used on the runAnsiblePlaybookScript plugin operation.

Image Added

Below is the Ansible playbook that is saved in /home/ubuntu/ansibleTest. This plugin verifies that Apache is up to date, starts the server if it is not running, and stops the server if it is running.

Code Block
title/home/ubuntu/ansibleTest/testPlaybook.yml
---
- hosts: dkrlp01
#  become: yes
  tasks:
          - name: verify latest version Apache
            apt:
                name: apache2
                update_cache: yes
                state: latest

          - name: ensure httpd is running
            service:
                name: apache2
                state: started
          - name: stop apache
            service:
                    name: apache2
                    state: stopped

Below is the hosts inventory file that is saved in /home/ubuntu/ansibleTest

Code Block
title/home/ubuntu/ansibleTest/hosts
[apache]
dkrlp01 ansible_ssh_host=dkrlp01.flexagon ansible_ssh_user=ubuntu ansible_ssh_pass=welcome1

[all:vars]
ansible_sudo_pass=welcome1