-
Bug
-
Resolution: Done
-
Undefined
-
None
-
None
-
None
-
2
-
False
-
-
False
-
?
-
rhos-ops-day1day2-migrations
-
None
-
-
-
-
Team OS Migrate Sprint 14
-
1
-
Critical
Problem
The bindep.txt (we renamed it from binddep.txt) file in the vmware-migration-kit collection includes epel-release as a dependency. This causes Ansible Execution Environment builds to fail when using RHEL9-based images such as registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel9:latest.
Error Message
ansible-builder build --no-cache --tag rhospvmt-ee:latest -v 3 error: No package matches 'epel-release' Error: building at STEP "RUN /output/scripts/assemble": while running runtime: exit status 1
Technical Details: Ansible Builder Introspection Phase
When ansible-builder builds an Execution Environment, it performs an introspection phase that automatically discovers and merges dependencies from all collections specified in requirements.yml.
Build Process
1. Galaxy Stage: Downloads collections from Automation Hub/Galaxy to /usr/share/ansible/collections
2. Builder Stage: Runs introspect.py which:
- Scans each collection for bindep.txt, requirements.txt, and meta/ee-requirements.txt
- Merges user-provided dependencies with collection dependencies
- Writes merged files to /tmp/src/bindep.txt and /tmp/src/requirements.txt
3. Assemble Stage: Runs /output/scripts/assemble which: - Parses merged bindep.txt using bindep tool
- Installs all packages via microdnf
Containerfile Snippet (generated by ansible-builder)
# Builder stage
RUN $PYCMD /output/scripts/introspect.py introspect \
--sanitize \
--user-pip=requirements.txt \
--user-bindep=bindep.txt \
--write-bindep=/tmp/src/bindep.txt \
--write-pip=/tmp/src/requirements.txt
RUN /output/scripts/assemble
Root Cause
The ee-minimal-rhel9 base image does not have EPEL repositories configured, and epel-release is not available in standard RHEL repositories.
Impact
This issue blocks users from building Ansible Execution Environments with the os_migrate.vmware_migration_kit collection using standard AAP base images.
Workaround
Users can work around this by adding EPEL installation in additional_build_steps.prepend_base in their execution-environment.yml:
additional_build_steps: prepend_base: - "RUN curl -sLo /tmp/epel-release.rpm https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm && rpm -ivh /tmp/epel-release.rpm && rm -f /tmp/epel-release.rpm"
However, this workaround should not be necessary.
- links to