Take 2 on grabbing components from our Gemfile
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