Native GitLab Runner on IBM z/OS (Shell Executor only)
Overview
As of 2024-01-26 the IBM developed GitLab Runner port is available on Z/OS Open Tools.
Z/OS Open Tools Overview
-
Z/OS Open Tools provides a package manager for the installation of
unsupported
open-source tools that run native on Z/OS systems. - z/OS Open Tools also provides an easy to use tool for building these same tools from source code on your z/OS system.
- z/OS OpenTools is an open-source project, and does not include paid support options
- Z/OS Open Tools docs
- Wharf - a tool for building and maintaining ports of Go packages.
Porting process
-
Install Wharf on Z/OS -
Initialize a workspace with go work init
-
In the root of workspace directory clone the package you want to port. For example gitlab-runner. -
After cloning run go work use <repo name>
-
Afterwards, at the root of the workspace directory run Wharf -> wharf ./<package name>/cmd/…
Wharf doesn’t handle every case and so for GitLab Runner there are some upstream packages that must be manually patched.
Proposal for phase 1: Runner port on Z/OS Open Tools - manual maintenance of the port.
-
IBM creates a port of GitLab runner and publishes the port to z/OS Open Tools. -
Z/OS version compatibility = 3.1 -
The runner port is maintained by the Z/OS Open Tools community. This means that someone has to take an action to maintain the update. -
IBM or GitLab does not provide any support for the GitLab Runner published to z/OS Open Tools. -
The proposal for phase I means that there is no work required by the GitLab Runner core engineering team to support maintenance of the ports
Note - the goal is to have the GitLab Runner port on Z/OS Open Tools available in mid to late January 2024.
Proposal for phase II: Runner port on Z/OS Open Tools - auto maintenance of the port
- Gitlab accepts a merge request with z/OS changes to Gitlab Runner. The MR does not affect other OS architectures.
- Once done, zOpenTools responds automatically with a rebuild when upstream changes are made.
- Gitlab appoints a liaison (ideally technical) who will work with the IBM team on issues.
- The liaison also has his/her name attached to the zOpenTools project so they are notified of issues opened on the zOpenTools Gitlab Runner build.
- GitLab and IBM work together on fixes.
Note- No decision has been made at this time regarding the proposal for phase II.
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.