Skip to content

chore(deps): bump the github-actions group with 2 updates #691

chore(deps): bump the github-actions group with 2 updates

chore(deps): bump the github-actions group with 2 updates #691

Workflow file for this run

name: Verify
on:
push:
pull_request:
permissions:
contents: read
concurrency:
group: verify-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest
outputs:
code_changed: ${{ steps.filter.outputs.code }}
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Detect code changes
id: filter
uses: dorny/paths-filter@v4
with:
filters: |
code:
- '**/*'
- '!docs/**'
- '!**/*.md'
- '!**/*.mdx'
- '!LICENSE'
- '!.editorconfig'
- '!.gitattributes'
- '!.gitignore'
- '!.npmrc'
- '!**/.DS_Store'
- '!.github/ISSUE_TEMPLATE/**'
- '!.github/PULL_REQUEST_TEMPLATE*'
docs-only:
runs-on: ubuntu-latest
needs: changes
if: needs.changes.outputs.code_changed != 'true'
steps:
- name: Docs-only change set
run: echo "Docs-only change detected; skipping heavy verification gates."
verify:
needs: changes
if: needs.changes.outputs.code_changed == 'true'
runs-on: ubuntu-latest
timeout-minutes: 30
services:
postgres:
image: postgres:16
env:
POSTGRES_DB: corpsim
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
options: >-
--health-cmd "pg_isready -U postgres -d corpsim"
--health-interval 10s
--health-timeout 5s
--health-retries 5
redis:
image: redis:7
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
NODE_ENV: test
DATABASE_URL: postgresql://postgres:postgres@localhost:5432/corpsim
DB_HOST: localhost
DB_PORT: 5432
DB_NAME: corpsim
DB_USER: postgres
DB_PASSWORD: postgres
REDIS_HOST: localhost
REDIS_PORT: 6379
NEXT_PUBLIC_API_URL: http://localhost:3000
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Setup pnpm
uses: pnpm/action-setup@v5
with:
version: 9
- name: Setup Node
uses: actions/setup-node@v6
with:
node-version: 20
cache: pnpm
- name: Validate tag version alignment
if: startsWith(github.ref, 'refs/tags/v')
run: node scripts/check-tag-version.mjs
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Generate Prisma client
run: pnpm -C packages/db generate
- name: Apply migrations
run: pnpm -C packages/db migrate:deploy
- name: Reset simulation world
run: pnpm sim:reset
- name: Run worker integration test
run: pnpm --dir apps/api exec vitest run --config vitest.config.ts test/worker.integration.test.ts
- name: Run verification gates
run: pnpm verify:full
gate:
name: Verify Gate
runs-on: ubuntu-latest
permissions: {}
needs:
- changes
- docs-only
- verify
if: always()
steps:
- name: Summarize and enforce verification outcome
shell: bash
run: |
echo "changes=${{ needs.changes.result }}"
echo "verify=${{ needs.verify.result }}"
echo "docs-only=${{ needs['docs-only'].result }}"
if [ "${{ needs.changes.result }}" != "success" ]; then
echo "Change detection failed."
exit 1
fi
if [ "${{ needs.verify.result }}" = "success" ] || [ "${{ needs['docs-only'].result }}" = "success" ]; then
exit 0
fi
echo "No successful verification job (verify/docs-only)."
exit 1