Ansible Automation Platform
Full Stack Release using Ansible Automation Platform
Ansible Automation Platform is the replacement for Ansible Tower.
The Application Stack is a combination of Podman containers with an Apache reverse proxy for ingress.
This implementation does not include infrastructure, i.e. the creation of the host and related networking is not included in the automation, however, it does combine configuration management and software delivery.
graph TD client["🌐"]:::transparent subgraph dc["Data Center"] subgraph vm["Host"] Apache subgraph Podman vm1-con-a["Rails"] vm1-con-b["Spring"] vm1-con-c["Python"] end end end client --> Apache --> vm1-con-a Apache --> vm1-con-b Apache --> vm1-con-c classDef transparent fill:none,stroke:none,color:black classDef dashed stroke-dasharray: 5, 5 class dc dashed classDef dotted stroke-dasharray: 2, 2 class Podman dotted
The configuration of the host and deployment of the application are defined once, and deployed many times, e.g. test and production.
graph LR subgraph Rails Rbuild["Build"] --> Rtest["Test"] --> Rpublish["Publish"] end subgraph Python Pbuild["Build"] --> Ptest["Test"] --> Ppublish["Publish"] end subgraph Spring Sbuild["Build"] --> Stest["Test"] --> Spublish["Publish"] end subgraph Release TEST:::release PROD:::release end store1[(GitLab Docker Registry)] store2[(Nexus Docker Registry)] Rpublish --> store1 Spublish --> store1 Ppublish --> store2 store1 --> TEST store2 --> TEST TEST --> PROD classDef release fill:lightgreen
Component Pipelines
Autonomous Development
Manifest
Application Stack Declaration
Ansible Build
Immutable Release Package
Ansible Deploy
Detokenisation and Release