AAP Bridge¶
A production-grade Python tool for migrating Ansible Automation Platform (AAP) installations from one version to another, designed to handle large-scale migrations (e.g., 80,000+ hosts).
Key Features¶
- Bulk Operations - Leverages AAP bulk APIs for high-performance migrations
- State Management - PostgreSQL-backed state tracking with checkpoint/resume capability
- Idempotency - Safely resume interrupted migrations without creating duplicates
- Professional Progress Display - Rich-based live progress with real-time metrics
- Flexible Output Modes - Normal, quiet, CI/CD, and detailed modes
- Comprehensive Logging - Structured logging with separate console and file levels
- Split-File Export/Import - Automatic file splitting for large datasets
Quick Links¶
-
Get AAP Bridge installed on your system
-
Get up and running in 5 minutes
-
Complete command reference
-
Configure AAP Bridge for your environment
Architecture Overview¶
AAP Bridge follows an ETL (Export, Transform, Load) architecture:
graph LR
A[Source AAP<br/>2.3/2.4] -->|Export| B[AAP Bridge<br/>ETL Engine]
B -->|Load| C[Target AAP<br/>2.6+]
B <-->|State<br/>Management| D[(PostgreSQL<br/>State Database)]
style A fill:#e1f5ff,stroke:#01579b,stroke-width:2px
style B fill:#fff9c4,stroke:#f57f17,stroke-width:3px
style C fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style D fill:#f3e5f5,stroke:#6a1b9a,stroke-width:2px
Components:
- Client Layer - HTTP clients for source AAP, target AAP, and HashiCorp Vault
- Migration Layer - ETL pipeline with exporters, transformers, and importers
- State Management - Database-backed progress tracking and ID mapping
- CLI - User-friendly command-line interface
Migration Order¶
Resources are migrated in dependency order:
- Organizations, Labels, Users, Teams
- Credential Types, Credentials
- Execution Environments
- Inventories, Inventory Sources, Inventory Groups
- Hosts (bulk operations)
- Instances, Instance Groups
- Projects
- Job Templates, Workflows
- Schedules
License¶
This project is licensed under the GNU General Public License v3.0.
Support¶
- Issues: GitHub Issues
- Security: See SECURITY.md