Files
cfw-autumn/.github/workflows/validate-schema.yml
2026-06-03 10:40:45 +01:00

62 lines
1.5 KiB
YAML

name: Validate Production Schema
on:
pull_request:
branches:
- main
push:
branches:
- main
jobs:
changes:
name: Detect schema-relevant changes
runs-on: blacksmith-2vcpu-ubuntu-2404
outputs:
schema: ${{ steps.filter.outputs.schema }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Filter paths
id: filter
uses: dorny/paths-filter@v3
with:
filters: |
schema:
- 'shared/**'
- 'server/**'
- 'scripts/migrations/**'
- '.github/workflows/validate-schema.yml'
validate-schema:
name: Validate Schema
needs: changes
runs-on: blacksmith-4vcpu-ubuntu-2404
steps:
- name: Skip (no schema-relevant changes)
if: needs.changes.outputs.schema != 'true'
run: echo "No schema-relevant changes detected; skipping validation."
- name: Checkout code
if: needs.changes.outputs.schema == 'true'
uses: actions/checkout@v4
- name: Set up Bun
if: needs.changes.outputs.schema == 'true'
uses: oven-sh/setup-bun@v2
with:
bun-version: 1.3.10
- name: Install dependencies
if: needs.changes.outputs.schema == 'true'
run: bun install
- name: Validate schema
if: needs.changes.outputs.schema == 'true'
env:
DATABASE_URL: ${{ secrets.DATABASE_READ_ONLY_URL }}
DB_MAX_CONNECTIONS: 1
run: bun scripts/migrations/validate-schema.ts