Skip to content

deploy-staging

deploy-staging #159

name: deploy-staging
# After CI is green on main, deploy every surface to staging. Each
# surface runs through the shared deploy-surface reusable workflow, so
# staging and production share one deploy engine.
#
# Surfaces deploy independently (matrix, fail-fast disabled): one
# surface failing does not block the others, and any single surface can
# be re-run on its own from the Actions tab.
on:
workflow_run:
workflows: [ci]
types: [completed]
branches: [main]
permissions:
contents: read
packages: read
jobs:
deploy:
if: ${{ github.event.workflow_run.conclusion == 'success' }}
strategy:
fail-fast: false
matrix:
surface:
- architecture
- main
- cultures
uses: ./.github/workflows/deploy-surface.yml
with:
surface: ${{ matrix.surface }}
env: staging
# Deploy exactly the commit CI just validated, not the tip of main.
ref: ${{ github.event.workflow_run.head_sha }}
secrets: inherit