Changelog¶
All notable changes to AAP Bridge are documented here.
For the complete changelog, see CHANGELOG.md in the repository.
Version History¶
Unreleased (since v0.1.0)¶
New Features:
- AAP 2.7 supported as a migration source and target (same-or-forward paths only; see compatibility matrix).
- Optional container CLI workflow: Podman Compose stack with bundled PostgreSQL and
bridge images (
make build,make up-dev,make shell, etc.). - Web UI: React/PatternFly browser interface with connection management, migration preview, TUI-matching phased migration controls, job history, and live log streaming.
- Integration testing infrastructure: Ansible playbooks and roles under
tests/integration/for golden-image builds (AAP 1.0–2.7), pair orchestration, and bridge connectivity checks (make build-aap,run-pair,reset-pair, etc.). - Source version support expanded to AAP 1.0 through 2.7 on same-or-forward paths to AAP 2.6 or 2.7 targets per the compatibility matrix.
- Survey spec migration for job templates and workflow job templates.
- Notification template association migration (started/success/error/approvals).
- Nested inventory group hierarchy export and import.
- Host-to-group associations applied after bulk import.
- Constructed inventory
input_inventoriesexported and re-linked on target. - Automatic inventory source sync after import (with configurable timeout/polling).
- Smart inventory import deferred until after inventory source sync.
- Classic RBAC migration for user and team resource role grants to the target AAP 2.5+ RBAC model.
- For AAP 2.5+ sources, new-model RBAC migration is fully implemented and functional for
role_definitions,role_user_assignments, androle_team_assignments. - Version-driven API routing: host-only URLs with required
SOURCE__VERSION/TARGET__VERSIONselect legacy or gateway + controller API bases. role_definitionsincluded in cleanup phase.skip_credential_namesconfiguration option (defaults exclude installer-created credentials).skip_execution_environment_namesconfiguration option (defaults exclude platform-managed EEs).- MkDocs GitHub Actions deployment workflow.
- AWX migration documentation: version mapping, configuration guidance, and compatibility matrix entries (only AWX 24.6.1 tested).
Improvements:
- Schedules: export enabled and disabled non-system schedules; import with
enabled=false(system-job schedules still excluded). make setupauto-detects uv or falls back to stdlib venv + pip.- Export and transform phase order now matches the import dependency order (credential types and credentials before projects; users and teams after all content objects). Export progress display reflects this order even with parallel export enabled.
- Compatibility matrix messaging clarifies same-or-forward migration rules and distinguishes integration-tested 2.6 paths from 2.7 paths where batch integration coverage is still pending.
- Documentation overhaul (#108): README is a front door into MkDocs; PostgreSQL and
install detail live in Installation; Quick Start defers to Installation/Configuration;
canonical resource order is only in Migration Workflow;
migrate fullexamples corrected; Resource Support Matrix added to MkDocs nav.
Added:
- Bridge dev container bind-mounts
exports,xformed,reports,logs, andschemasfrom the repo root (matching engine) so artifacts are visible on the host.
Bug Fixes:
- Inventory source sync wait no longer hangs after a 405 on
update/(removed GET launch fallback that used the source id as the expected job id); wait matches current/last update job fields and recovers from expected-job mismatches. - Cleanup clears export/transform contents without removing mount points; export/transform overwrite prompts only when directories contain data.
- Phase 2 project sync wait uses
project_sync_timeout(not batch interval); ignores stale failed status until the current sync job is active. - Controller organization FK resolution on gateway targets (lookup org by name on the controller API for credentials and other controller-scoped imports).
- Credential import reruns retry previously failed resources instead of skipping them.
- Credential deduplication: same-name/different-type and non-unique name+org+type cases handled correctly.
- Batch precheck scoping fixed for org-scoped, parent-scoped, notification template, and schedule resources.
- Project sync failure detection with retry and configurable abort.
- System-job schedules excluded from export/import/cleanup.
- Managed credential types matched by namespace when name differs between versions.
- User team memberships exported and re-applied on import.
- Vault configuration is now optional.
- Cleanup: inventory sources excluded, job history preserved, groups/hosts skipped.
- Managed execution environments always protected from deletion (including in
--fullmode). - Import dispatch table corrected for
notification_templates,credential_input_sources,rbac, andworkflow_job_templates. - Instance group RBAC API exception handling is now scoped to AAP 2.5+ sources only.
- 400 "pending deletion" responses treated as idempotent skips.
- Credential type reruns now map "already exists" conflicts and mark completed state.
- Host bulk import reruns now skip already-mapped hosts and persist host progress state.
- Gateway RBAC routing for 2.5+ sources (dual-base role definitions/assignments,
shared.*content types, target_api_baseremapping). - Gateway RBAC assignment dedupe and principal resolution when gateway and controller APIs use different surrogate IDs for the same user, team, or assignment.
- Legacy source RBAC (1.0–2.4) converted to role assignments on AAP 2.6 targets.
- Role definitions export via parallel path on AAP 2.5+ sources.
- Team member sync when team create is skipped on rerun.
- Config path resolution when running from a subdirectory.
v0.1.0¶
Initial release of AAP Bridge.
Features:
- Full ETL pipeline for AAP migration.
- Bulk operations support for hosts.
- PostgreSQL-backed state management.
- Checkpoint/resume capability.
- Rich progress display.
- Split-file export/import for large datasets.
- Interactive CLI menu.
Supported Resources:
- Organizations.
- Labels.
- Users.
- Teams.
- Credential Types.
- Credentials.
- Credential Input Sources.
- Execution Environments.
- Inventories.
- Inventory Sources.
- Inventory Groups.
- Hosts.
- Projects.
- Notification Templates.
- Job Templates.
- Workflow Job Templates.
- System Job Templates.
- Schedules.
- Role Definitions.
- User Role Assignments.
- Team Role Assignments.
Known Limitations:
- Encrypted credentials cannot be migrated via API (use HashiCorp Vault or manual entry).
- Workflow approval nodes require manual review after migration.
Versioning¶
AAP Bridge follows Semantic Versioning:
- MAJOR: Incompatible API changes.
- MINOR: New functionality (backwards compatible).
- PATCH: Bug fixes (backwards compatible).
Upgrade Notes¶
When upgrading AAP Bridge:
- Review the changelog for breaking changes
- Backup your state database
- Test in a staging environment first
- Update configuration if needed