-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Added CI worker for native S390X #1052
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
base: develop
Are you sure you want to change the base?
Conversation
|
You would need to maintain the worker, and I am the only maintainer with which to exchange tokens. |
19fb036 to
70fb0b4
Compare
2086092 to
697cf66
Compare
|
this PR is ready for review. i left this in the code: next steps:
|
|
Ok. So how does this get set up? |
|
i added a readme here that explains how one could setup actions worker. However as i shall maintain the worker, I sent a pgp encrypted email with info about how we could do a token exchange to the email mentioned in your github profile(madler[at]alumni.caltech.edu). |
|
@fneddy: Good job! |
|
@madler: Do not forget this PR too. |
Background
As mentioned in #1050
Qemudoes not implement the hardware acceleration instructions forS390X. Therefor a Qemu based CI will never actually test the code but fallback and use the software implementation. For this reason its highly desirable to run the zlib CI on a real S390X IBM System Z worker.Setup
This PR adds CI jobs for native S390X workers.
GitHub has not yet support for this architecture. Therefore its necessary to add self-hosted workers.
Marist University offers free workers for open source projects with their LinuxONE Community Cloud.
Job Control
The self-hosted worker setup does not allow forks to run their CI jobs on the worker. Therefor it is necessary to deactivate this new jobs for forks.
Currently its not possible to deactivate or skip a GitHub Action Job. Therefor I added an
enabledflag to thecmakeandconfigurejob matrix. Together with a repository check (${{ github.repository == 'madler/zlib' && 'true' || 'false' }}) the new CI jobs can bedisabledfor forks. By filtering on this flag in the job steps forks could be set toalways succeedoralways fail.S390X worker
GitHub does not officially support S390X as a worker. With gaplib its possible to connect an S390X instance as a self-hosted worker.
This raises some questions: Should we add the gaplib-scripts to the zlib src (zlib-ng did that). Who will maintain the
self-hostedworker at the LinuxONE Community Cloud? I've already setup an account for testing and am willing to take this responsibility. But if its decided that it should be maintained by an official zlib maintainer I am happy to assist with the setup. If I shall maintain the worker, I need a communication channel with a zlib maintainer to exchange the github tokens.Open Questions
native S390XCI run on forks be always failing or always success ? -> @fneddy votes for always successcontribfolder? ->@fneddy no/ @iii-i yes