Test GitLab releases with the new release date
Context
Starting on the 16.6 milestone, the monthly release date will be moved from the 22nd to the 3rd Thursday of each month. As part of this work, a new SSOT for the release information was introduced (releases.yml
) and the release templates, including monthly and security ones, have been updated to use the new schedule.
The purpose of this test is to corroborate the release issues are compatible with the new releases SSOT.
Requirements
-
Create a feature flag on ops https://ops.gitlab.net/gitlab-org/release/tools/-/feature_flags/238/edit -
Ensure the usage of the new SSOT is visible gitlab-org/release-tools!2613 (merged) / gitlab-org/release-tools!2614 (merged)
✅ Monthly release testing - Details on #19626 (comment 1548422575)
Pre steps
-
Enable the dynamic_release_date
feature flag https://ops.gitlab.net/gitlab-org/release/tools/-/feature_flags -
Notify release managers that the test has started
General
-
Wait for the next auto-deploy:timer
to kick in -
Ensure a monthly release issue for 16.6 is created -
Confirm the due date is assigned to be 3 days later than creation (this follows the same hardcoded pattern on the monthly release -
Confirm there is a step requesting release managers to review the "Release preparation" dates -
Confirm that "Up until ..." has a date assigned (November 10th)
Release preparation dates
-
Confirm the "Release preparation" section has dates assigned -
Confirm the "Preparation day" has the expected date assigned (November 10th) -
Confirm the "Candidate selection day" has the expected date assigned (November 13th) -
Confirm the "RC tag day" has the expected date assigned (November 14th) -
Confirm the "tag day" has the expected date assigned (November 15th) -
Confirm the "Release day" has the expected date assigned (November 16th)
Assigneess
-
Confirmed the authorized release managers for 16.6 were fetched
Slack announcements
-
The slack message on the candidate release day uses the release date (November 16th) -
The slack message on the tag day uses the release date (November 16th)
Post-test
-
Disable the feature flag -
Notify release managers that the test has finished
✅ Security release testing #19626 (comment 1550230863)
Pre steps
-
Enable the dynamic_release_date
feature flag -
Notify release managers that the test has started
Testing
-
Create the security issue /chatops run release prepare --security
-
Confirm the security issue was successfully created - Do not trigger the security pipeline -
Confirm a due date was not assigned to the security issue -
Confirm there are no hard-coded dates
Post-steps
-
Disable the feature flag ( dynamic_release_date
) -
Notify release managers that the test has finished
✅ Release managers permissions #19626 (comment 1550257429)
Sync release managers
-
Enable the dynamic_release_date
feature flag -
Manually trigger the release_manager:sync
pipeline schedule -
Confirmed the authorized release managers have been retrieved.
Joining the release manager rotation
With an authorized release manager
-
Enable the dynamic_release_date
feature flag -
Ask someone who is outside of the release manager rotation to temporarily join the release management groups by triggering this pipeline. (e.g sabrams
orrpereira2
) -
Confirm the team member is added to Slack -
Confirm the team member is added to the GitLab release manager group on .com -
Confirm the team member is added to the GitLab release manager group on dev -
Confirm the team member is added to the GitLab release manager group on ops.
With an non-authorized release manager
-
Enable the dynamic_release_date
feature flag -
Ask someone who is not on the release manager rotation to trigger this pipeline -
Confirm the pipeline failed -
Confirm the team member is not added to Slack -
Confirm the team member is not added to the GitLab release manager group on .com -
Confirm the team member is not added to the GitLab release manager group on dev -
Confirm the team member is not added to the GitLab release manager group on ops.
What to do if something goes wrong?
- [-] Close the issues created
- [-] Disable the feature flag (
dynamic_release_date
) - [-] Trigger the
release_manager:sync
pipeline schedule
Clean-up
-
Revert gitlab-org/release-tools!2614 (merged) => gitlab-org/release-tools!2622 (merged) -
Create a follow-up to ensure the active version uses the new Release SSOT. => #19592 (closed) -
Create follow-up to remove FF from the releases issues #19638 (closed) -
Create follow-up to remove FF from Schedule
and to remove theSCHEDULE_YAML
constant #19639 (closed)
Edited by Mayra Cabrera