Skip to content

Take 2 on grabbing components from our Gemfile

John Skarbek requested to merge jts/revert into master

This MR contains a revert to put !836 (merged) back into place and adds the necessary testing to ensure proper behavior into the future

Addresses: gitlab-com/gl-infra/delivery#577 (closed)

4043f5fb - Revert "Merge branch 'revert-a24273da' into 'master'"

  • Currently only Mailroom is the only gem we utilize as it's own service
  • This creates mailroom as a component of GitLab
  • pulls this only for CNG as omnibus has it's own mechanism of building the mailroom component
  • This reuses our existing mechanism of finding component versions, which means the following:
    • omnibus has it's own method of retrieving versions using official tags
    • CNG does not, so we need to convert SemVer components (not stuff in our gems) need to have the v as it appears to be standard for GitLab when tagging our components
    • ensures that specific components are named properly for CNG, example VERSION is equal to GITLAB_VERSION
      • all of this unique to the way CNG does it's build process
  • Getting versions from a Gemfile.lock is now repetitive, so it needs to be broken out, preferably into it's own class
  • Since these versions are already located in our Gemfile somewhere:
    • Utilizes Bundler to find the version
    • contains the necessary wrappers to guide our existing calls to find the file either via the GitLab API, or via a file on disk

78266b66 - Adds testing for CNG Image Release

  • Adds a test that was missing for the finding of the Gemfile components required for the CNG release
  • Bolsters the fixture to include the Gemfile
Edited by John Skarbek

Merge request reports