name: CI on: push: branches: [develop] paths-ignore: - ".beans/**" - "*.md" - "LICENSE" - ".gitignore" - ".github/workflows/deploy.yml" pull_request: branches: [develop] paths-ignore: - ".beans/**" - "*.md" - "LICENSE" - ".gitignore" - ".github/workflows/deploy.yml" permissions: contents: read jobs: backend-tests: runs-on: ubuntu-latest services: postgres: image: postgres:16-alpine ports: - 5433:5432 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: nuzlocke_test options: >- --health-cmd "pg_isready -U postgres" --health-interval 10s --health-timeout 5s --health-retries 5 steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 with: persist-credentials: false - name: Install uv and Python run: | curl -LsSf https://astral.sh/uv/install.sh | sh source "$HOME/.local/bin/env" echo "$HOME/.local/bin" >> "$GITHUB_PATH" uv python install 3.14 - name: Run tests run: uv run --python 3.14 --extra dev pytest -q working-directory: backend env: TEST_DATABASE_URL: postgresql+asyncpg://postgres:postgres@192.168.1.10:5433/nuzlocke_test frontend-tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 with: persist-credentials: false - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: "24" - name: Install dependencies run: npm ci working-directory: frontend - name: Run tests run: npm test working-directory: frontend