Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 44 additions & 4 deletions .github/workflows/crap-crates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,28 @@ env:

jobs:
crap-stack-auth:
name: CRAP (stack-auth)
runs-on: blacksmith-16vcpu-ubuntu-2204
# RunsOn trial: this job on every runner in `runner`. Collapse before merging.
name: CRAP (stack-auth) (${{ matrix.runner.name }})
runs-on: ${{ matrix.runner.label }}
strategy:
fail-fast: false
matrix:
runner:
- id: blacksmith
name: blacksmith 16vcpu
label: blacksmith-16vcpu-ubuntu-2204
- id: github
name: github
label: ubuntu-22.04
- id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu22-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu22-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-16
name: runs-on c8a 16cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=16/image=ubuntu22-full-x64/volume=80gb/extras=s3-cache
timeout-minutes: 45
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand All @@ -82,8 +102,28 @@ jobs:
run: mise run crap:stack-auth -- --format github

crap-stack-encrypt:
name: CRAP (stack-encrypt)
runs-on: blacksmith-16vcpu-ubuntu-2204
# RunsOn trial: this job on every runner in `runner`. Collapse before merging.
name: CRAP (stack-encrypt) (${{ matrix.runner.name }})
runs-on: ${{ matrix.runner.label }}
strategy:
fail-fast: false
matrix:
runner:
- id: blacksmith
name: blacksmith 16vcpu
label: blacksmith-16vcpu-ubuntu-2204
- id: github
name: github
label: ubuntu-22.04
- id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu22-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu22-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-16
name: runs-on c8a 16cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=16/image=ubuntu22-full-x64/volume=80gb/extras=s3-cache
timeout-minutes: 45
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand Down
222 changes: 213 additions & 9 deletions .github/workflows/fuzz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,23 +61,227 @@ env:

jobs:
fuzz-regression:
name: fuzz regression (${{ matrix.slug }})
# RunsOn trial: this job on every runner in `runner`. Collapse before merging.
name: fuzz regression (${{ matrix.slug }}) (${{ matrix.runner.name }})
# Not on the nightly schedule, which is the campaign's. A manual dispatch
# runs both jobs.
if: github.event_name != 'schedule'
runs-on: blacksmith-4vcpu-ubuntu-2404
runs-on: ${{ matrix.runner.label }}
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
include:
- { task: "fuzz:access-key", slug: access-key }
- { task: "fuzz:jwt-decode", slug: jwt-decode }
- { task: "fuzz:client-key", slug: client-key }
- { task: "fuzz:sealed-value", slug: sealed-value }
- { task: "fuzz:term-decode", slug: term-decode }
- { task: "fuzz:check-record", slug: check-record }
- { task: "fuzz:plan-build", slug: plan-build }
- task: "fuzz:access-key"
slug: access-key
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:access-key"
slug: access-key
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:access-key"
slug: access-key
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:access-key"
slug: access-key
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:access-key"
slug: access-key
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:jwt-decode"
slug: jwt-decode
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:jwt-decode"
slug: jwt-decode
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:jwt-decode"
slug: jwt-decode
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:jwt-decode"
slug: jwt-decode
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:jwt-decode"
slug: jwt-decode
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:client-key"
slug: client-key
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:client-key"
slug: client-key
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:client-key"
slug: client-key
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:client-key"
slug: client-key
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:client-key"
slug: client-key
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:sealed-value"
slug: sealed-value
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:sealed-value"
slug: sealed-value
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:sealed-value"
slug: sealed-value
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:sealed-value"
slug: sealed-value
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:sealed-value"
slug: sealed-value
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:term-decode"
slug: term-decode
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:term-decode"
slug: term-decode
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:term-decode"
slug: term-decode
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:term-decode"
slug: term-decode
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:term-decode"
slug: term-decode
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:check-record"
slug: check-record
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:check-record"
slug: check-record
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:check-record"
slug: check-record
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:check-record"
slug: check-record
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:check-record"
slug: check-record
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:plan-build"
slug: plan-build
runner:
id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- task: "fuzz:plan-build"
slug: plan-build
runner:
id: github
name: github
label: ubuntu-24.04
- task: "fuzz:plan-build"
slug: plan-build
runner:
id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:plan-build"
slug: plan-build
runner:
id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- task: "fuzz:plan-build"
slug: plan-build
runner:
id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
with:
Expand Down
21 changes: 19 additions & 2 deletions .github/workflows/integration-drizzle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -203,8 +203,9 @@ on:

jobs:
integration:
name: Drizzle v3 integration (db=${{ matrix.db }})
runs-on: blacksmith-4vcpu-ubuntu-2404
# RunsOn trial: this job on every runner in `runner`. Collapse before merging.
name: Drizzle v3 integration (db=${{ matrix.db }}) (${{ matrix.runner.name }})
runs-on: ${{ matrix.runner.label }}
# No concurrency group: `integration-db` gives each job its own compose
# project and ephemeral host ports, so live-DB jobs no longer contend and do
# not need serialising. See that action for why the old
Expand Down Expand Up @@ -232,6 +233,22 @@ jobs:
# harness assert the `anon` path on the database it is actually running
# against.)
matrix:
runner:
- id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- id: github
name: github
label: ubuntu-24.04
- id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
db: [postgres, supabase]

env:
Expand Down
21 changes: 19 additions & 2 deletions .github/workflows/integration-prisma-next.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,9 @@ on:

jobs:
integration:
name: prisma-next v3 integration (db=${{ matrix.db }})
runs-on: blacksmith-4vcpu-ubuntu-2404
# RunsOn trial: this job on every runner in `runner`. Collapse before merging.
name: prisma-next v3 integration (db=${{ matrix.db }}) (${{ matrix.runner.name }})
runs-on: ${{ matrix.runner.label }}
# No concurrency group: `integration-db` gives each job its own compose
# project and ephemeral host ports, so live-DB jobs no longer contend and do
# not need serialising. See that action for why the old
Expand All @@ -137,6 +138,22 @@ jobs:
# is not a superuser, so the EQL install takes its self-skipping path. A
# suite that passes on a superuser database can still fail there.
matrix:
runner:
- id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- id: github
name: github
label: ubuntu-24.04
- id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
db: [postgres, supabase]

env:
Expand Down
24 changes: 22 additions & 2 deletions .github/workflows/integration-protect-ffi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,28 @@ concurrency:

jobs:
integration:
name: protect-ffi integration suite
runs-on: blacksmith-4vcpu-ubuntu-2404
# RunsOn trial: this job on every runner in `runner`. Collapse before merging.
name: protect-ffi integration suite (${{ matrix.runner.name }})
runs-on: ${{ matrix.runner.label }}
strategy:
fail-fast: false
matrix:
runner:
- id: blacksmith
name: blacksmith 4vcpu
label: blacksmith-4vcpu-ubuntu-2404
- id: github
name: github
label: ubuntu-24.04
- id: runs-on-2
name: runs-on c8a 2cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=2/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-4
name: runs-on c8a 4cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=4/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
- id: runs-on-8
name: runs-on c8a 8cpu
label: runs-on=${{ github.run_id }}/family=c8a/cpu=8/image=ubuntu24-full-x64/volume=80gb/extras=s3-cache
# Generous, because a cold `build-ffi-binding` compiles the cipherstash
# client graph from scratch. It is also the backstop for `mise run
# start-db`, whose readiness loop retries `pg_isready` forever rather than
Expand Down
Loading
Loading