Skip to content

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_inventories exported 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, and role_team_assignments.
  • Version-driven API routing: host-only URLs with required SOURCE__VERSION / TARGET__VERSION select legacy or gateway + controller API bases.
  • role_definitions included in cleanup phase.
  • skip_credential_names configuration option (defaults exclude installer-created credentials).
  • skip_execution_environment_names configuration 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 setup auto-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 full examples corrected; Resource Support Matrix added to MkDocs nav.

Added:

  • Bridge dev container bind-mounts exports, xformed, reports, logs, and schemas from 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 --full mode).
  • Import dispatch table corrected for notification_templates, credential_input_sources, rbac, and workflow_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_base remapping).
  • 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:

  1. Review the changelog for breaking changes
  2. Backup your state database
  3. Test in a staging environment first
  4. Update configuration if needed