Skip to content

xebialabs-community/xlr-ansible-automation-controller-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xlr-ansible-automation-controller-plugin

a plugin developed to integrate Ansible Automation Platform Controller API with Digiatal.ai Release

Overview

The plugin acts as a bridge between Digital.ai Release, a comprehensive release orchestration solution, and Ansible Tower (Ansible Automation Platform Controller). It allows users to incorporate Ansible Tower tasks and playbooks directly into their release pipelines, ensuring smooth integration of infrastructure provisioning, configuration management, and application deployments.

Interfaces

Connection / Authentication

The authentication page on the Ansible plugin allows users to securely access the plugin using both Basic Authentication and tokens generated from the Ansible Automation Platform. These authentication methods ensure a seamless integration with Digital.ai Release while maintaining robust security measures.

image

Tasks List

The plugin offers a range of tasks to :

  • Get information using an Ansible Automation Controller API's endpoint
  • Add or Remove a credential from a job template
  • Inventory list
  • Run job template
  • Wait for a job template status (asyn)
  • Run and wait for a job template to finish (sync)

image

Run a job template

Input required properties are:

  • A valid Ansible Automation Controller server
  • A Job Template ID or name Input optinal properties are:
  • Extra vars: A string that represents a JSON or YAML formatted dictionary (with escaped parentheses) which includes variables given by the user, including answers to survey questions
  • Is Workflow : Check if it's a workflow job template image

Results example:

image image

Wait for job status (async)

Input properties:

  • Server: Ansible Automation Platform Controller Server to connect to
  • Username: Overwrite username if defined in connection for
  • Password: Overwrite password if defined in connection for
  • Api token: Overwrite API token if defined in connection form
  • Max_retries: Max retries default value is infinity
  • Wait_interval (required): Wait interval in seconds
  • Stop On Failure: if checked it fail task when job fails
  • Is workflow: Check if it's a workflow job template

image image

Results example:

image image

Run and wait for job status (sync)

This task parameters are a fusion of the two previous tasks

image image

Results example:

image image

Get infromation from API endpoint

  • Endpoint example: /api/v2/me image

Results example:

image

Get inventory List

  • Filter: Filter the inventory list. Empty to get the hole list. Example: ?page=1 image

Results example:

image

Add/Remove credential from a job template

  • Job template id
  • Credential id: Id of this credential
  • Remove: check if you want to disassociate the credential from the job template

image