Files
OpenShell/.github/workflows/shadow-branch-e2e.yml
2026-04-30 13:22:47 -07:00

72 lines
1.7 KiB
YAML

name: Shadow Branch E2E
# OS-129 Phase 5: non-required Branch E2E coverage on supported shared CPU
# runners. Trusted PR mirrors stay gated by the existing test:e2e label.
on:
push:
branches:
- "pull-request/[0-9]+"
workflow_dispatch:
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
pr_metadata:
name: Resolve PR metadata
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
outputs:
should_run: ${{ steps.gate.outputs.should_run }}
steps:
- uses: actions/checkout@v6
- id: gate
uses: ./.github/actions/pr-gate
with:
required_label: test:e2e
build-gateway:
needs: [pr_metadata]
if: needs.pr_metadata.outputs.should_run == 'true'
permissions:
contents: read
packages: write
uses: ./.github/workflows/docker-build.yml
with:
component: gateway
platform: linux/arm64
image-tag: shadow-branch-e2e-${{ github.sha }}
secrets: inherit
build-cluster:
needs: [pr_metadata]
if: needs.pr_metadata.outputs.should_run == 'true'
permissions:
contents: read
packages: write
uses: ./.github/workflows/docker-build.yml
with:
component: cluster
platform: linux/arm64
image-tag: shadow-branch-e2e-${{ github.sha }}
secrets: inherit
e2e:
needs: [pr_metadata, build-gateway, build-cluster]
if: needs.pr_metadata.outputs.should_run == 'true'
permissions:
contents: read
packages: read
uses: ./.github/workflows/e2e-test.yml
with:
image-tag: shadow-branch-e2e-${{ github.sha }}
runner: linux-arm64-cpu8
secrets: inherit