Skip to content

Add fedora/rpm package build support#13

Merged
bwarden merged 16 commits intoqualcomm-linux:mainfrom
bwarden:feat/add-fedora-support
Apr 14, 2026
Merged

Add fedora/rpm package build support#13
bwarden merged 16 commits intoqualcomm-linux:mainfrom
bwarden:feat/add-fedora-support

Conversation

@bwarden
Copy link
Copy Markdown
Contributor

@bwarden bwarden commented Mar 27, 2026

I've introduced a tool to create docker images for the RPM-based distributions, based off of the deb tool. For both tools, I implemented the ability to deduce which docker files apply to each tool, so rebuilding all images only rebuilds those in the family that tool is intended for.

I've also reworked the workflows and actions to split them up -- debian images take longer to build and there are currently more of them, so it helps to parallelize the image build flows. That also meant pushing upload into separate actions, one for deb and one for rpm.

Hopefully I've accounted for everything here to at least successfully produce Fedora rawhide and Fedora 44 images as a proof of concept, without breaking debian builds; then I can continue working on docker_rpm_build.py for our actual needs.

@bwarden bwarden force-pushed the feat/add-fedora-support branch 2 times, most recently from d97a2c6 to 4557482 Compare March 27, 2026 18:47
@bwarden bwarden marked this pull request as ready for review March 27, 2026 23:18
@bwarden bwarden marked this pull request as draft March 27, 2026 23:24
@bwarden bwarden force-pushed the feat/add-fedora-support branch from a10be76 to ccd3579 Compare March 30, 2026 22:53
@bwarden bwarden force-pushed the feat/add-fedora-support branch from bcf6ace to de47b4a Compare April 3, 2026 19:32
@bwarden
Copy link
Copy Markdown
Contributor Author

bwarden commented Apr 3, 2026

This will of course require the repo to be modified to have build-deb-arm64 and build-rpm-arm64 as required checks instead of build-image-arm64.

@bwarden bwarden force-pushed the feat/add-fedora-support branch from 0aa9337 to de74e84 Compare April 6, 2026 17:00
@bwarden bwarden marked this pull request as ready for review April 6, 2026 17:08
@bwarden bwarden requested a review from meenal-khare April 6, 2026 17:09
@bwarden bwarden marked this pull request as draft April 6, 2026 17:30
@bwarden bwarden force-pushed the feat/add-fedora-support branch 2 times, most recently from 45dd14e to fb01cb3 Compare April 7, 2026 16:44
@bwarden bwarden marked this pull request as ready for review April 7, 2026 17:03
Comment thread .github/actions/build_deb_container/action.yml Outdated
Comment thread .github/actions/build_rpm_container/action.yml Outdated
Comment thread .github/actions/upload_containers/action.yml Outdated
Comment thread .github/workflows/qcom-container-build-and-upload.yml
Comment thread .github/workflows/qcom-container-build-and-upload.yml
@bwarden bwarden force-pushed the feat/add-fedora-support branch 2 times, most recently from 5b184a8 to 184c52f Compare April 13, 2026 17:31
bwarden added 10 commits April 13, 2026 10:33
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Add logic to scan the relevant Dockerfiles to determine whether the
target images are debian/ubuntu based. Applies when rebuilding all
Docker images.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Docker image should include "fedora.rawhide", not just "rawhide", for
example.

More important when dealing with numeric releases like RHEL 8 or Fedora
44.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
When installing base or extra packages for DNF-based distros, make sure
we only pass dnf a non-empty list, as it will exit with a failure
otherwise.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Also add a stub to simulate pushing the images.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
These take a while to build, so might as well be parallel.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
bwarden added 5 commits April 13, 2026 10:33
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
…y changes

docker_deb_build.py was reworked to omit the arch name from docker
container names, so make the equivalent changes to docker_rpm_build.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Per review feedback, move the distinct actions back into a single,
converged workflow.
Also enable RPM image upload (remove `echo`)

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
@bwarden bwarden force-pushed the feat/add-fedora-support branch from 184c52f to 547196d Compare April 13, 2026 17:33
@bwarden
Copy link
Copy Markdown
Contributor Author

bwarden commented Apr 13, 2026

I found how to update the required checks. If this looks good, it can be merged, and I'll update the checks to require build-rpm-arm64 and build-deb-arm64, and remove build-image-arm64. But we also have to resolve why docker/login-action@v3 is no longer permitted.

@bwarden
Copy link
Copy Markdown
Contributor Author

bwarden commented Apr 14, 2026

docker/login-action was mistakenly disabled. I've updated the checks and will proceed to merge once they pass.

@bwarden bwarden force-pushed the feat/add-fedora-support branch from cdab61d to 547196d Compare April 14, 2026 21:15
Previously, we set a default of rawhide if no distro was specified for
docker_rpm_build. If --rebuild was passed without a specific distro,
only the rawhide container would be built. Rework to build all detected
RPM-based containers in that case.

Signed-off-by: Brett T. Warden <bwarden@qti.qualcomm.com>
@bwarden bwarden merged commit a3e9db6 into qualcomm-linux:main Apr 14, 2026
12 checks passed
@bwarden bwarden deleted the feat/add-fedora-support branch April 14, 2026 22:03
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