Skip to content

ci: Parallelize Cloud Run service deploys#211

Open
rgibert wants to merge 2 commits into
mainfrom
rgibert/parallelize-deploys
Open

ci: Parallelize Cloud Run service deploys#211
rgibert wants to merge 2 commits into
mainfrom
rgibert/parallelize-deploys

Conversation

@rgibert
Copy link
Copy Markdown
Member

@rgibert rgibert commented May 22, 2026

Split the monolithic deploy job into matrix-based jobs so the three service deploys per environment (main, slack-bot, async) run in parallel after the db migration completes.

The deploy graph is now:

build --> deploy-db-migration (matrix: test + prod, step-level condition skips unused env)
            |
            +--> deploy-test  (matrix: 3 services in parallel)
            +--> deploy-prod  (matrix: 3 services in parallel)

DB migrations use a single matrix job with a step-level if to gate which environment actually runs. Service deploys use per-environment jobs with their own matrix of three independent Cloud Run services. fail-fast: false so a single service failure doesn't cancel the other two.

Single-container services now use flags: --image "..." instead of the image: parameter so all matrix entries share the same deploy step shape.

Agent transcript: https://claudescope.sentry.dev/share/zKxqyxJ4CMBvsoD_mOpXN4H9oqdO-xobMaObw0GNcPc

Split the monolithic deploy job into matrix-based jobs so the three
service deploys per environment (main, slack-bot, async) run in
parallel after the db migration completes.

Co-Authored-By: Claude <noreply@anthropic.com>

Agent transcript: https://claudescope.sentry.dev/share/QYu0ZiqLLWGvEUsCJ_rHFWCFQZTCcShDxXiE6mbSqKE
Comment thread .github/workflows/deploy.yml
Comment thread .github/workflows/deploy.yml Outdated
Gate all migration matrix steps on the environment condition (not just
the migration step) so a transient auth failure in the unused
environment's matrix entry cannot block the active environment's deploys.

Move env var interpolation out of strategy.matrix (where the env context
is unavailable) and into step-level with: fields. Use a multi_container
boolean in the matrix with two conditional deploy steps instead.

Co-Authored-By: Claude <noreply@anthropic.com>

Agent transcript: https://claudescope.sentry.dev/share/I6h0CYcnQ3AyOmV5ci-tHM7daxTdzSNPWlizysXIo0E
@rgibert rgibert self-assigned this May 22, 2026
@rgibert rgibert marked this pull request as ready for review May 22, 2026 20:27
@rgibert rgibert requested a review from a team as a code owner May 22, 2026 20:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant