SoftwareX (Jul 2022)

Ansible execution control in Python and Golang for cloud orchestration

  • David Badalyan,
  • Oleg Borisenko

Journal volume & issue
Vol. 19
p. 101126

Abstract

Read online

The Ansible configuration manager is currently one of the most popular systems for software deployment. However, Ansible is difficult to debug when working with large scenarios and is difficult to embed into other systems. We propose the cotea (Python) and gocotea (Golang) tools that allow users to control Ansible execution programmatically, by iterating over the tasks and collecting progress information. We additionally propose gopython — a solution for embedding arbitrary Python code into a Golang application. The approach used was generalized up to the abstract architecture of the software tool, which allows for the control of an arbitrary Python program execution.

Keywords