Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to centos:stream9-minimal #246

Open
wants to merge 1 commit into
base: devel
Choose a base branch
from

Conversation

austlane
Copy link
Contributor

@austlane austlane commented May 25, 2024

This PR switches the base image to centos:stream9-minimal which uses microdnf and does not bundle Python3.9, allowing us to ship a final image without Python 3.9 installed at all.

Also removes subversion, as it hard-depends upon python3.9, no love lost.

This is another take on #207 and #244
EDIT: Rebased after #207 was merged.


Currently this PR relies upon ansible/ansible-builder#664 which enables dependency exclusions, allowing overrides of bindep.txt dependencies directly inherited from collections.

This PR will be marked as a Draft until ansible/ansible-builder#664 is merged.

EDIT: ansible/ansible-builder#664 has been merged. This PR is ready for review.

git-lfs [platform:rpm]
sshpass [platform:rpm]
rsync [platform:rpm]
epel-release [platform:rpm]
python-unversioned-command [platform:rpm]
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This package always links to python3.9 on el9. Replaced with alternatives commands below.

Comment on lines +66 to +70
exclude:
system:
- python3
- python3-devel
- python3-rpm
Copy link
Contributor Author

@austlane austlane May 25, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requires ansible/ansible-builder#664

EDIT: ansible/ansible-builder#664 has been merged! 🎉

@TheRealHaoLiu
Copy link
Member

@austlane this is awesome, is this PR ready?

@austlane
Copy link
Contributor Author

@austlane this is awesome, is this PR ready?

This PR works as-is 👍 But I'd imagine it shouldn't be merged until ansible/ansible-builder#664 is merged into ansible-builder, depending directly on a PR seems hacky.
I'll rebase when it's merged and remove my changes to requirements.txt.

@austlane austlane force-pushed the centos9-minimal branch 2 times, most recently from 1e0743f to 9486970 Compare June 25, 2024 16:08
@austlane austlane marked this pull request as ready for review June 25, 2024 16:09
@@ -2,8 +2,13 @@
version: 3
images:
base_image:
name: quay.io/centos/centos:stream9
name: quay.io/centos/centos:stream9-minimal
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any particular reason for switching from stream9 to stream9-minimal?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The stream9-minimal images do not include python at all out of the box, which allows us to avoid unnecessarily bundling two versions of python in awx-ee (3.9 + 3.11). That was the primary motivation.

@austlane
Copy link
Contributor Author

austlane commented Aug 16, 2024

I'll be rebasing this PR now that #207 has been merged 👍

I still think this approach is worth consideration to keep the EE light / avoid shipping two Pythons.

EDIT: Rebased :)

@austlane austlane marked this pull request as draft August 16, 2024 17:03
Also removes `subversion`, as it hard-depends upon `python3.9`.
@austlane austlane marked this pull request as ready for review August 16, 2024 17:13
@austlane austlane changed the title Switch to centos:stream9-minimal and python3.11 Switch to centos:stream9-minimal Aug 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants