Game #385
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: Continuous integration | |
| concurrency: | |
| cancel-in-progress: true | |
| group: pull-request-${{ github.event.pull_request.number }} | |
| jobs: | |
| # Stage 1: bun, dependency-review, devskim | |
| # bun: | |
| # name: bun | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - name: Checkout repo | |
| # uses: actions/checkout@v4 | |
| # - name: Install bun | |
| # uses: oven-sh/setup-bun@v1 | |
| # - name: Install dependencies | |
| # run: bun install | |
| # - name: Build | |
| # run: bun run build | |
| # - name: Test | |
| # run: bun run test | |
| dependency-review: | |
| name: Dependency review | |
| runs-on: ubuntu-latest | |
| permissions: | |
| pull-requests: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Review | |
| uses: actions/dependency-review-action@v2 | |
| devskim: | |
| name: DevSkim | |
| runs-on: ubuntu-latest | |
| permissions: | |
| actions: read | |
| contents: read | |
| security-events: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Scan | |
| uses: microsoft/devskim-action@v1 | |
| with: | |
| options-json: config/devskim.json | |
| - name: Upload | |
| uses: github/codeql-action/upload-sarif@v2 | |
| with: | |
| sarif_file: devskim-results.sarif | |
| wait-for-processing: true | |
| # Stage 2: build | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - name: Build | |
| run: npm run-script build | |
| env: | |
| CLARITY_TAG: ln18ya61ca | |
| CLOUD_ACCOUNT_ID: quisido | |
| CLOUD_PLATFORM: GitHub | |
| CLOUD_PROVIDER: GitHub Pages | |
| CSP_ORIGIN: https://localhost:6586 | |
| DASHBOARD_ENDPOINT: https://localhost:9778/ | |
| DD_API_KEY: ${{ secrets.DATADOG_API_KEY }} | |
| DD_APPLICATION_ID: 3e55f7ef-a00a-41ab-9857-baf7ad00daa1 | |
| DD_CLIENT_TOKEN: pubee0abcc4e08cef309eda284ba1d44e32 | |
| DD_ENV: staging | |
| DD_PROFILING_ENABLED: true | |
| DD_SERVICE: quisi.do-(staging) | |
| DD_VERSION: ${{ github.sha }} | |
| DEPLOYMENT_ENVIRONMENT: integration | |
| GITHUB_REPOSITORY: ${{ github.repository }} | |
| GITHUB_SHA: ${{ github.sha }} | |
| GOOGLE_ANALYTICS_TRACKING_ID: G-GMKFW5ZZ9G | |
| HONEYCOMB_API_KEY: hcaik_01hwsd84kyjjrwjgg4kqbzzvp2 | |
| PATREON_OAUTH_CLIENT_ID: 4kCae2AHZdKyyuonaPzhGillxJ2HyyLQEDu8StvMtixBHmWmN4KVG0QVP6R45tjG | |
| PATREON_OAUTH_REDIRECT_URI: https://localhost:5882/patreon/ | |
| SENTRY_ENVIRONMENT: staging | |
| WHOAMI: https://localhost:5882/whoami/ | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: build | |
| path: packages/*/dist/ | |
| lighthouse: | |
| name: Lighthouse | |
| needs: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Node | |
| uses: actions/setup-node@v4 | |
| - name: Download build | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: build | |
| path: packages/ | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - name: Audit | |
| run: npm run-script lighthouse:report --workspace=packages/vite | |
| - name: Validate | |
| run: npm run-script postlighthouse --workspace=packages/vite | |
| - name: Upload | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: lighthouse | |
| path: | | |
| packages/*/lighthouse.report.* | |
| packages/*/lighthouse-*.devtoolslog.json | |
| packages/*/lighthouse-*.trace.json | |
| test: | |
| name: Test | |
| needs: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Download build | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: build | |
| path: packages/ | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - name: Test | |
| run: npm run-script test --include-workspace-root --workspaces | |
| env: | |
| CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_EDIT_WORKERS_API_TOKEN }} | |
| DD_API_KEY: ${{ secrets.DATADOG_API_KEY }} | |
| DD_CIVISIBILITY_AGENTLESS_ENABLED: true | |
| DD_ENV: ci | |
| DD_SERVICE: quisi.do | |
| - name: Upload | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: test | |
| path: packages/*/.vitest/ | |
| # This requires some more setup to work. Configure the test step to upload report artifacts. | |
| # Then add this to the CD file. | |
| sentry-prevent: | |
| name: Sentry Prevent | |
| needs: test | |
| runs-on: ubuntu-latest | |
| permissions: | |
| id-token: write | |
| steps: | |
| - name: Download | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: test | |
| path: packages/*/ | |
| - name: Upload | |
| if: ${{ !cancelled() }} | |
| uses: getsentry/prevent-action@v0 | |
| # Stage 4: coverage | |
| # coverage: | |
| # name: Coverage | |
| # needs: [test] # cypress | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - name: Checkout | |
| # uses: actions/checkout@v4 | |
| # - name: Download Cypress artifacts | |
| # uses: actions/download-artifact@v4 | |
| # with: | |
| # name: cypress | |
| # path: packages/ | |
| # - name: Download test artifacts | |
| # uses: actions/download-artifact@v4 | |
| # with: | |
| # name: test | |
| # path: / | |
| # - name: Setup | |
| # uses: ./.github/actions/setup | |
| # - name: Report coverage | |
| # run: npm run-script coverage --workspace=packages/vite | |
| # env: | |
| # BRANCHES_COVERAGE_THRESHOLD: 1 | |
| # FUNCTIONS_COVERAGE_THRESHOLD: 1 | |
| # LINES_COVERAGE_THRESHOLD: 1 | |
| # STATEMENTS_COVERAGE_THRESHOLD: 1 | |
| # - name: Upload coverage | |
| # if: always() | |
| # uses: actions/upload-artifact@v4 | |
| # with: | |
| # name: coverage | |
| # path: | | |
| # packages/*/.nyc_output/ | |
| # packages/*/coverage/ | |
| on: | |
| pull_request: |