Class to update gitlab VERSION files with internal release version

What does this MR do and why?

Adds ReleaseTools::InternalRelease::Release class and a method to update and commit version changes to the VERSION file in the security/gitlab repository.

Addressing gitlab-com/gl-infra/delivery#20644 (closed)

In order to set the version of a package, we need to update the VERSION file with the version. Once we pass in the current version and internal number (0 in 17.4.1-internal0), we can use them to update the VERSION files on the respectable stable branches in security gitlab repository.

For example, if the class is initiated with version:17.4.1, executing it will update the VERSION file for 17.4 to 17.4.1-internal0 and push a commit to the security stable branch 17-4-stable-ee.

To commit the updated VERSION file, I used similar logic as the commit_version_files method in public_release/release.rb module that gets used in the gitlab_release.rb class like so, except a lot simpler.

Edited by Jenny Kim

Merge request reports

Loading