Skip to content

[Feature flag] Rollout of `ssh_key_expiration_email_notification`

Feature

The SSH key expiration notification email feature (both the "already expired" and "expiring soon" emails) is behind the :ssh_key_expiration_email_notification feature flag. The feature flag needs to be rolled out.

Note: These emails are scheduled to be sent at 1am, presumably that is UTC.

Owners

Stakeholders

The Rollout Plan

  • Partial Rollout on GitLab.com with beta groups
  • Rollout on GitLab.com for a certain period (How long)
  • Percentage Rollout on GitLab.com - XX% If it is possible to perform an incremental rollout, this should be preferred. Proposed increments are: 10%, 50%, 100%. Proposed minimum time between increments is 15 minutes.
  • Rollout Feature for everyone as soon as it's ready

Beta Groups/Projects:

  • gitlab-org/gitlab project
  • gitlab-org/gitlab-com groups
  • ...

Expectations

What are we expecting to happen?

What might happen if this goes wrong?

What can we monitor to detect problems with this?

Rollout Timeline

Initial Rollout

Preperation Phase

  • Enable on staging (/chatops run feature set ssh_key_expiration_email_notification true --staging)

  • Test on staging

  • Ensure that documentation has been updated (More info)

  • Coordinate a time to enable the flag with the SRE oncall and release managers

    • In #production by pinging @sre-oncall
    • In #g_delivery by pinging @release-managers
  • Announce on the issue an estimated time this will be enabled on GitLab.com

Partial Rollout Phase

  • Enable on GitLab.com for individual groups/projects listed above and verify behaviour (/chatops run feature set --project=gitlab-org/gitlab ssh_key_expiration_email_notification true)

  • Verify behaviour (See Beta Groups) and add details with screenshots as a comment on this issue

Global Availability (More Info) (Please Note that Beta, Alpha and General Availability (GA) are handled on a product level and not the feature-flag)

  • Coordinate a time to enable the flag with #production and #g_delivery on slack.

  • Announce on the issue an estimated time this will be enabled on GitLab.com

  • Make the feature flag enabled by default i.e. Change default_enabled to true in !61812 (merged)

  • Enable on GitLab.com by running chatops command in #production (/chatops run feature set ssh_key_expiration_email_notification 10)

  • Enable on GitLab.com by running chatops command in #production (/chatops run feature set ssh_key_expiration_email_notification true)

  • Announce on the issue that the flag has been enabled

  • Cross post chatops slack command to #support_gitlab-com (more guidance when this is necessary in the dev docs) and in your team channel

Rollback Steps

  • This feature can be disabled by running the following Chatops command:
/chatops run feature set ssh_key_expiration_email_notification false
Edited by Dan Jensen