Publish a GitLab Runner Docker image for Linux on IBM Z
Description
Provide and maintain a GitLab Runner Docker imagefor Linux on IBM Z. (Linux on IBM Z is Linux running on an IBM mainframe system.)
As of the GitLab Runner 13.2 release, a Runner Docker image for Linux on Z is now available on DockerHub. You will need to download the image labelled linux/s390x.
Problem
GitLab customers that use IBM mainframes are adopting modern DevOps practices and need to run GitLab on the mainframe to guarantee service level objectives for system uptime.
As of the initial investigation into this issue, the s390 platform did not have the GCC compiler, so GO doesn't run. So, this meant that the reasonable first step to install GitLab on the s390x platform is to develop and publish a GitLab Runner Docker image for Linux on Z.
Benefits
Users will be able to run GitLab Runner in a container on Linux on Z.
Non-Goals
Providing a GitLab EE Docker image for Linux on Z is out of scope for this issue.
Work do to before providing Docker image for s390x
- Provide the
gitlab-runnerbinary for thes390xarchitecture. #25794 (closed) - Build the GitLab Runner helper image so that the
dockerexecutor can be used ons390x#25795 (closed)
Proposal
- Update the Runner documentation as needed to cover use of the Runner inside a Docker container on Linux on IBM Z.
- Publish image to https://hub.docker.com/r/gitlab/gitlab-runner by updating our release script to add the
s390xarchitecture.
Implementation notes
Adding the docker image for gitlab-runner should be a matter of:
- Adding a new architecture in
TARGET_ARCHS - Finding the checksum for each binary
Dependencies
-
docker-machine:docker-machinedoesn't provides390xarchitecture, we would either have to build it on our own fork or just don't provide support fordocker-machine git-
git-lfs:S390xwas only introduced inv2.10.0, we are still onv2.7.1, but are working on an update in #4034 (comment 337437566) but we can see if we can justapk add git-lfsand install automatically but wouldn't match our version.