Draft: Add build support for s390x (IBM Z on Linux)

What does this MR do?

There were two main issues building GitLab for s390x:

  1. The s390x architecture is big endian, but the current Ruby protobuf doesn't work due to endian issues. We now download a patched protobuf gem from gitlab-org/ruby/gems/protobuf!1 (merged).

  2. BoringSSL isn't supported by s390x either. We can use the system OpenSSL library, but we need modifications to Ruby's extconf.rb to do this (gitlab-org/ruby/gems/grpc!1 (merged)).

Part of #6435

Related issues

Checklist

See Definition of done.

For anything in this list which will not be completed, please provide a reason in the MR discussion

Required

  • Merge Request Title, and Description are up to date, accurate, and descriptive
  • MR targeting the appropriate branch
  • MR has a green pipeline on GitLab.com
  • Pipeline is green on dev.gitlab.org if the change is touching anything besides documentation or internal cookbooks
  • trigger-package has a green pipeline running against latest commit

Expected (please provide an explanation if not completing)

  • Test plan indicating conditions for success has been posted and passes
  • Documentation created/updated
  • Tests added
  • Integration tests added to GitLab QA
  • Equivalent MR/issue for the GitLab Chart opened
Edited by Stan Hu

Merge request reports

Loading