Skip to content

Support multi-environments in ChatOps feature commands

Problem

Currently, the chatops commands for feature flags don't support multiple environments. This sometimes result in an awkward situation that the #production channel becomes very noisy by the commands and responses. Also, it takes long time to finish one command and another.

Related #120 (closed)

What's changed in this MR

Reference: Feature Flag issue template.

Preproduction rollout phase

Before

/chatops run feature set <flag-name> true --dev
/chatops run feature set <flag-name> true --staging

After

/chatops run feature set <flag-name> true --dev --staging

Cleanup rollout phase

Before

/chatops run feature delete <flag-name> --dev
/chatops run feature delete <flag-name> --staging
/chatops run feature delete <flag-name>

After

/chatops run feature cleanup <flag-name> --dev --staging --production

NOTES

  • The current business logic, such as logging and blocking on incident, is unchanged. Even if the command succeeded on --dev, it could fail on --production. The progress message is shown in the Slack channel.
  • Multi-environments is only supported in feature chatops command only. If the other kind of commands attempts multi-envs args, it results in this chatops command does not support multiple environments error.
Edited by Shinya Maeda

Merge request reports

Loading