Add Internal stage to the Organizations release process
What does this MR do and why?
Adds an Organizations release stage, "Internal", for GitLab team members only. It sits between Experimental and Beta:
Experimental -> Internal -> Beta -> LA 25/50/75/100 -> GA -> Stable
GitLab team members get their own stage to use organization features before opted-in customers see them. Beta's audience narrows to opted-in customers only (it was "GitLab team members and opted-in customers").
- The stage is backed by a new ops feature flag,
org_stage_internal(default off). - Internal cascades like Experimental and Beta (
CASCADING_STAGE_KEYS = %i[experimental internal beta]), so team members keep every Beta-and-later feature. - Internal is optional, like Experimental. Beta stays required.
- No registry entries change stage.
Files: lib/organizations/release/stage.rb, lib/organizations/release.rb, config/feature_flags/ops/org_stage_internal.yml, config/organizations_release.yml, doc/development/organizations/release_process.md, doc/development/organizations/release_status.md (regenerated), spec/lib/organizations/release_spec.rb.
A second commit refreshes the "Test your feature" section of release_process.md. It described an older stub_organization_release that toggled stage flags. The helper now stubs Organizations::Release.enabled? per flag with keyword arguments.
Rollout after merge
Move the gitlab_team_members feature-group grant from org_stage_beta to org_stage_internal:
/chatops run feature set --feature-group=gitlab_team_members org_stage_internal trueThen remove the gitlab_team_members grant from org_stage_beta.
References
- Handbook MR updating the release-stages page: gitlab-com/content-sites/handbook!21320 (merged)
- Epic: &9265
Screenshots or screen recordings
None. This MR has no UI change.
How to set up and validate locally
- Run the spec:
bin/rspec spec/lib/organizations/release_spec.rb - Optionally, in a rails console, confirm
internalsits betweenexperimentalandbeta:Organizations::Release.stages.map(&:key)
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.