Move Woodhouse (Slack bot) to Runway (us-central1)
Currently Woodhouse is only deployed in us-east1
. Because we use it for change and incident management and it now uses the ops instance as a fallback, I would like to move it out of the us-east1
region which is where we have .com deployed.
Instead of moving it to the ops central cluster, we may want to consider moving Woodhouse out of K8s and into cloudrun, using Runway.
Tasks
-
Are there any Woodhouse dependencies that would prevent us from running it Cloudrun? None that I can see -
Do we depend at all on local network access? No -
Are all secrets in Vault and will we be able to port them over to Runway easily? Yes this should be straightforward -
We have two Woodhouse deployments, one in ops-gke and another in gstg-gke, what will staging look like? You get multiple environments by default on Runway as far as I am aware - you can configure different variables for them using runway.yml and runway-staging.yml. -
Create woodhouse-staging-runway
andwoodhouse-runway
app in Slack -
Give token access to the deployment project https://gitlab.com/gitlab-com/gl-infra/woodhouse/-/settings/ci_cd -
Create the runway deployment for woodhouse woodhouse!434 (merged) -
Migrate secrets #25526 (comment 1966575614) -
Bot scopes for woodhouse-staging-runway approval https://api.slack.com/apps/A079J4Q7M61/general? -
Bot scopes for woodhouse-runway approval https://api.slack.com/apps/A079LU76WUT/general? -
Update slack-bot-access-token and slack-signing-secret for woodhouse-staging-runway -
Update slack-bot-access-token and slack-signing-secret for woodhouse-runway -
Validate woodhouse-staging-runway
-
Validate woodohouse-runway
-
Fix runway included CI for ops mirror https://ops.gitlab.net/gitlab-com/gl-infra/woodhouse/-/pipelines/3461290 -
Set proper GLOBAL_SLASH_COMMAND woodhouse!452 (merged) -
Update Slack secrets in vault so they match the woodhouse and woodhouse-staging apps -
Switch the woodhouse-staging
slack app to use Runway -
Update the webhook endpoint for Staging -
Add monitoring for woodhouse-slack
gitlab-com/runbooks!7637 (merged) -
Switch the woodhouse
slack app to use Runway https://gitlab.com/gitlab-com/gl-infra/production/-/issues/18293 -
Update the webhook endpoint gitlab-com/gl-infra/production -
Remove the woodhouse deployment in ops gitlab-com/gl-infra/k8s-workloads/tanka-deployments!946 (merged) -
Fix woodhouse trigger issue (not related to runway but was caused by refactoring) #25418 (comment 1982842958) -
Clean up the woodhouse pipeline since we will no longer need the staging image or deployment to gke (except for crons)
References
- runway onboarding docs https://docs.runway.gitlab.com/guides/onboarding/
- slack apps
- woodhouse-staging-runway https://api.slack.com/apps/A079J4Q7M61/general
- woodhouse-runway https://api.slack.com/apps/A079LU76WUT/general
- Asked to get them approved https://gitlab.slack.com/archives/CK4EQH50E/p1719304644359959
- app integration issue https://gitlab.com/gitlab-com/Finance-Division/procurement-team/procurement/-/issues/1650
- endpoints
- deployment project https://gitlab.com/gitlab-com/gl-infra/platform/runway/deployments/woodhouse-7uifqm
- runway service name
woodhouse-7uifqm
- draft MR for runway deployment from woodhouse woodhouse!434 (merged)
- logs for woodhouse-staging-runway https://cloudlogging.app.goo.gl/cUEwKGAiBZj6WPAQA
- logs for woodhouse-runway
Edited by John Jarvis