Navigate:
~$AWX0.2%

AWX: Web interface and API for Ansible automation

Django-based control plane for centralized Ansible management.

LIVE RANKINGS • 10:20 AM • STEADY
OVERALL
#273
9
CLOUD & DEVOPS
#14
30 DAY RANKING TREND
ovr#273
·Cloud#14
STARS
15.3K
FORKS
3.6K
7D STARS
+30
7D FORKS
+8
See Repo:
Share:

Learn more about AWX

AWX is a control plane application built on top of Ansible that adds centralized management capabilities to Ansible deployments. The project is implemented using Django and Django REST Framework for the backend, with a React-based frontend, and includes a task engine for orchestrating Ansible playbook execution. It exposes both a web interface and REST API for managing inventories, credentials, job templates, and execution workflows. AWX is commonly deployed in enterprise environments where teams need centralized automation governance, audit trails, and multi-user access control for Ansible infrastructure.

AWX

1

Upstream Ansible Platform

Community-driven project that feeds directly into Red Hat Ansible Automation Platform. Evaluate enterprise features early and contribute to the roadmap before commercial release, with full visibility into upstream development.

2

Independent Component Scaling

Django REST API, React frontend, and task execution engine run as separate services. Scale job runners independently from the web interface based on workload, enabling resource optimization for large automation deployments.

3

Pluggable Architecture Refactoring

Features a modular plugin system that allows extending core functionality without modifying base code. Custom inventory sources, credential types, and notification backends can be added independently, enabling tailored automation solutions.


// Launch an existing job template via AWX API
const response = await fetch('https://awx.example.com/api/v2/job_templates/42/launch/', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_TOKEN',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ extra_vars: { target_env: 'production' } })
});

const job = await response.json();
console.log(`Job ${job.id} started`);


v24.6.1

Maintenance release fixing RBAC permission issues and improving database connection handling

  • Fixed various RBAC issues related to managed RoleDefinitions
  • Added troubleshooting and tips and tricks content to the AWX Administration Guide
  • Updated user models to adhere to new API assignments
  • Added the TASKMANAGERLOCK_TIMEOUT DB connection setting for task manager connections and lock in database
v24.6.0

Security fixes, resource management improvements, and enhanced development environment capabilities

  • Added Cython to VENV_BOOTSTRAP for grpcio
  • Updated platform ingress to not allow modification of the shared resources
  • Added option for the dev environment to enable SSL for PostgreSQL
  • Updated HostMetric updates to gather each batch as a single transaction
  • Replaced REMOTEADDR with ansiblebase.lib.utils.requests.getremotehost
v24.5.0

Centralized logging via OpenTelemetry, AWS SNS webhook notifications, and Kubernetes credentials support

  • Fixed the promote GitHub workflow associated with the release event
  • Replaced deprecated locale.format() with locale.format_string() to fix human output on Python 3.12
  • Reformatted long text line wrap to fit help window
  • Updated the docker-compose README to mention that you can skip make docker-compose-build


[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers