Add environment-based CORS origin allowlist #10
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deployment preparation | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| jobs: | |
| deployment_prep: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Set up Docker Compose | |
| uses: docker/setup-compose-action@v1 | |
| - name: Checkout the Repo | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22.x' | |
| cache: 'npm' | |
| - name: Install Dependencies | |
| run: npm ci | |
| - name: Check for Linting Issues | |
| run: npm run lint | |
| - name: Type-Check the Code | |
| run: npm run type-check | |
| - name: Start PostgreSQl Database Service | |
| run: npm run pg:up -- -d | |
| - name: Wait for PostgreSQL to Be Ready | |
| run: | | |
| until docker compose -f docker-compose.postgres.yml exec pg-db pg_isready -U kanux; do | |
| echo "Waiting for PostgreSQL..." | |
| sleep 1 | |
| done | |
| - name: Apply All Migrations to the Testing Database | |
| run: npm run test:db:push | |
| - name: Run All Tests | |
| run: npm run test -- --run | |
| - name: Stop PostgreSQl Service | |
| run: npm run pg:down | |
| - name: Apply All Migrations to the Production Database | |
| env: | |
| DATABASE_URL: ${{ secrets.DATABASE_URL }} | |
| run: npx prisma migrate deploy |