Skip to content

Make omnibus-gitlab build with Ruby 3

We currently build with Ruby 2.7. We should add a parallel CI job that also builds with Ruby 3 before we can safely switch over.

With omnibus there are two different Rubies to consider:

Updating the container Ruby will be much harder, since we are using old versions of chef and chef/omnibus (15.x and 7.x respectively) and which have not received Ruby 3 compat patches yet.

Suggested approach:

  1. Ensure that gitlab operates correctly under Ruby 3. This is happening in gitlab#336754 (closed).
  2. Update Ruby software version to 3, but keep container Ruby at 2.7 for now.
  3. Test application config, start-up, scripts, etc. and see what breaks.
  4. If everything OK -- we're done. Otherwise look into updating container Ruby to 3, which will likely be a ton of work, since it puts chef and omnibus on that path.
Edited by Matthias Käppler