How to add popular GOV.UK Slack integrations
Seal
Seal is a Slack bot that informs teams which pull requests they have open.
Configuration
Create a PR which adds some information (including team name and Slack channel) to alphagov.yml in the Seal repo. The Slack channel name does not need to match the team name.
Add the team name to bin/morning_seal and bin/afternoon_seal if you want two notifications a day, otherwise just pick one.
Make sure that the Slack channel name has been set as the ‘team’ in repos.yml in the GOV.UK Developer Docs repo. This will update this JSON endpoint which is used by the Seal.
Dependapanda
Dependapanda is a Slack bot which posts a list of open Dependabot Pull Requests for repos that a team owns.
Configuration
The process is the same as configuring the Seal. However, the team name will need to be added into bin/dependapanda.sh as opposed to the morning/afternoon Seal files.
More information about the Seal can be found in Seal’s Github Readme.
Rotabot
The Rotabot calculates who’s turn it is to do the housekeeping today and tomorrow (usually tasks such as being in charge of Dependabots and Sentry alerts). The tasks in the Slack message are configured using Markdown, so it’s fairly flexible.
Configuration
The Rotabot is configured using the govuk-rota-announcer repo. Add your team config to the weekday or weekly config depending on how often they want to be notified.
Release App Badger
The Release App Badger informs the team if there are pull requests that have not been deployed for a while or if environments are out of sync. This was originally configured in a repo called GOV.UK Deploy Lag Badger but the functionality was moved into the Release app as a result of the move to EKS.
Configuration
In the Release app, the badger will notify teams depending on the dependency_team which is set in repos.json. The dependency_team
field in the repos.json file is pulled from the team field in the repos.yml file if dependency_team isn’t set. If dependency_team isn’t set, the team
in repos.yml file would need to be the name of the Slack channel that you want to post to.
Sentry
Sentry is an error monitoring tool that we use on GOV.UK.
Configuration
Please see these docs. When creating a rule to send a notification to Slack, you may find that you need to input a channel ID as well as channel name. The ID can be found by clicking on the channel name in Slack and scrolling down until you can see the channel ID.