Repository navigation
Description
Please describe the project
AlmaLinux OS is a free, open-source, community-owned and governed enterprise Linux distribution, binary-compatible with Red Hat Enterprise Linux (RHEL). Founded in 2021 as a 1:1 replacement for CentOS Linux after its discontinuation, it is now stewarded by the non-profit AlmaLinux OS Foundation and governed by a community-elected board. AlmaLinux OS is focused on long-term stability and providing a robust, production-grade platform, and it ships official builds for x86_64, aarch64, ppc64le, and s390x β meaning Power and IBM Z are first-class supported architectures that we have a standing commitment to deliver builds and validated images for.
URL for the project
https://almalinux.org/
Describe current CI/CD setup
https://github.com/AlmaLinux/cloud-images
https://github.com/AlmaLinux/compose-tests
Both repositories use GitHub Actions as their CI/CD system.
- cloud-images: GitHub Actions workflows under .github/workflows/ already cover the x86_64 and aarch64 Packer builds for cloud and Vagrant images, plus publishing workflows for the Oracle Cloud Marketplace and Vagrant Cloud / HCP. There is no CI on ppc64le or s390x today β those Generic Cloud images are still produced outside Actions on manually-managed hardware and then uploaded to the release / mirror locations.
- compose-tests: GitHub Actions runs the tmt-based test plans on the architectures currently available to GitHub-hosted runners. There is no ppc64le or s390x coverage, which is the gap we want to close.
Describe the primary use case for the Github Action Runner
Two use cases on Power 9 (ppc64le) and IBM Z / LinuxONE (s390x):
- Build the AlmaLinux Generic Cloud (qcow2) image natively β only the Generic Cloud variant; we are not requesting CI for any other image type on these arches.
- On
ppc64le: Packer + QEMU/KVM-HV, as documented in the cloud-images README under "How to build Generic Cloud images on ppc64le". - On
s390x:oz-installagainst thealmalinux_*_gencloud_s390x.xml.tmpltemplates and thehttp/almalinux-*.gencloud-s390x.kskickstarts, then aqemu-img convertpass to compress and upgrade the qcow2 to v3.
- On
- Run the
tmt-based compose-tests suite on freshly producedppc64leands390ximages so per-arch regressions are caught on every compose.
The runners need KVM/virtualization (kvm_hvon Power, KVM on Z) since both Packer/QEMU andoz-installprovision a guest VM during the build/test.
Paste a link to the existing actions workflow file(s) or directory
- cloud-images: https://github.com/AlmaLinux/cloud-images/tree/main/.github/workflows
- compose-tests: https://github.com/AlmaLinux/compose-tests/tree/almalinux/.github/workflows
How often do you plan on executing the runner?
cloud-images: bi-weekly, scheduled, one Generic Cloud build per arch per supported AlmaLinux major version (8, 9, 10, Kitten 10). Plus on-demand runs for point releases / minor version bumps and on PRs that touch the*_s390x.xml.tmpl,*ppc64le*Packer files, the s390x kickstarts underhttp/, or the relevantansible/roles.compose-tests: daily, against the latest AlmaLinux updates, plus on-PR runs for changes undertests/andplans/.
What is the primary programming language for the project?
cloud-images: HCL (Packer, ~70%), Shell, Python, Jinja (Ansible).compose-tests: Shell +tmt/FMF metadata (YAML), with some Python helpers.
Please select desired hardware
- Power 9 (ppc64le)
- IBM Z / LinuxONE (s390x)
Account names of the GitHub repo admins that will need access to setting up the runner
andrewlukoshko
Activity
pleia2 commentedon May 7, 2026
Hi @andrewlukoshko ! As a starting point, the current infrastructure as of our 1.3 release is container-based (no KVM) and there are limitations as to what can be run within them due to security. It is in our roadmap to support KVM on both architectures, but I don't have an exact timeline for that right now.
Is there a way to do either of these without KVM temporarily? Or a subset of these tests/builds? We can also work with you to run through some test scenarios see what's possible.
andrewlukoshko commentedon May 8, 2026
@pleia2 yes we can run subset of https://github.com/AlmaLinux/compose-tests in containers too.
pleia2 commentedon May 29, 2026
Thanks! Focusing on compose-tests as a start, you mentioned:
Just to make sure I'm reading this correctly and comparing to the x86 runs, is this an accurate view into frequency and timing of the tests? https://github.com/AlmaLinux/compose-tests/actions/workflows/almalinux-compose-test-x86_64.yml (1-4 times a day, ~40 min per test)
andrewlukoshko commentedon Jun 2, 2026
@pleia2 I think it won't be 40 minutes because many tests are skipped in a container environment, so I'd say 20-30 min per run. Also we won't run every day because we only test when updates are going to be released, so "daily" is an average estimate. Some days we'll have 3 runs, some days 0.
pleia2 commentedon Jun 3, 2026
Great, let's ahead and move forward with on-boarding AlmaLinux specifically for these tests.
Please install the GitHub App from the following link and select your repository:
π Power Z GHA Runner App
For more details on the on-boarding process, please refer to our documentation:
π Onboarding Guide
Please let me know in this issue once you have installed the github app on your repos. For security reasons, I will double check it is the correct repos and then approve the repos to use our images. You will not be able to use our images until I approve the repos.
After the repos have been approved, you will be able to use the
ubuntu-24.04-ppc64leandubuntu-24.04-s390ximages in your workflow file. The on-boarding doc linked above will be helpful.Please note: forks will not be able to use this service since those repos will not be in our allow list.
andrewlukoshko commentedon Jun 23, 2026
@pleia2 I've installed the app to the following repos:
https://github.com/AlmaLinux/cloud-images
https://github.com/AlmaLinux/compose-tests
Please approve
mtarsel commentedon Jun 23, 2026
both repos have been approved so you can now use our images in your workflow file. I'll keep this issue open if there is any more questions
andrewlukoshko commentedon Oct 29, 2026
@mtarsel @pleia2 Currently I'm see the following in GitHub Apps. Could you please assist?
UPD. Fixed by reinstalling the app.
mtarsel commentedon Nov 2, 2026
Apologies - but I no longer work at IBM and am not working on this project anymore. I cannot remove myself from the Assignee list so I will defer to @pleia2