Skip to content

The story of gitlab-mail_room

Summary

gitlab-mail_room currently has 4 versions floating around:

  1. 0.0.9 is the version that gitlab-org/gitlab's Gemfile.lock uses: Gemfile.lock#L489. [1]
  2. 0.0.19 is the default in CNG: ci_files/variables.yml#L15
  3. 0.0.10 is the version that is pinned in k8s-workload: releases/gitlab/values/values.yaml.gotmpl#L1029
  4. 0.0.18 is the version that Omnibus uses: config/software/mail_room.rb

Setting mailroom version in CNG

  • When tagging an SM release (major, minor, patch), a commit used to be made on the gitlab-org/security/charts/components/images> stable branch (ex: f26f7c25) to set mailroom version to the version in gitlab-org/gitlab's Gemfile.lock. This was done by public_release/cng_image_release.rb#L137.

  • When tagging an auto deploy release, we do the same. A commit (ex: 65d988e9) is made on the CNG auto deploy branch to set the mailroom version to the version in gitlab-org/gitlab's Gemfile.lock. This continues to happen.

Mailroom in release/metadata

Questions

  1. What should be the mailroom version set in gitlab-org/security/charts/components/images> stable and auto deploy branches?
  2. What should be the mailroom version set in https://ops.gitlab.net/gitlab-org/release/metadata (for autodeploy versions)?

[1]: The version in gitlab-org/gitlab's Gemfile.lock is not actually in use. Omnibus uses its own version of gitlab-mail_room. The gem is not removed from the Gemfile because it would break compatibility for source installs. See https://docs.gitlab.com/ee/development/emails.html#rationale.

Edited by Reuben Pereira