Add manual release workflow
Why is this change being made?
Makes it possible to create RubyGem releases without an upstream pipeline trigger.
We need to create a RubyGem release for the currently supported schema range (https://gitlab.com/gitlab-org/ruby/gems/gitlab-security_report_schemas/-/issues/12). We also need to be able to release different versions of the gem for the same schema range.
This MR:
- moves release-related jobs to the
deploy
stage. - adds the
manual-release
job which triggers the existing release procedure by pushing a git tag. - changes the published git tags (!30 (diffs, comment 1989560022))
- fixes hard-coded versions in unit tests which otherwise break own-version bumps.
- fixes the
integrity_check
job (!30 (diffs, comment 1989568058)).
Validation
Tested with my fork and --dry-run
ning rake tasks.
Schema version range change
- added versions to
supported_versions
in bauerdominic/gitlab-security_report_schemas@06f7ecfa - release commit updates versions correctly bauerdominic/gitlab-security_report_schemas@5acefe45
- release job creates the correct gem version https://gitlab.com/bauerdominic/gitlab-security_report_schemas/-/jobs/7295017394
Version bump
- minor version bumped bauerdominic/gitlab-security_report_schemas@b7d6632a
- release commit updates versions correctly bauerdominic/gitlab-security_report_schemas@efb3b0eb
- release job creates the correct gem version https://gitlab.com/bauerdominic/gitlab-security_report_schemas/-/jobs/7295541077
Related to https://gitlab.com/gitlab-org/ruby/gems/gitlab-security_report_schemas/-/issues/12, gitlab-org/gitlab#383507, gitlab-org/gitlab#383516
Edited by Dominic Bauer