Fix async resolveOutput hooks not being awaited #850
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: Test | |
| on: | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup project | |
| uses: ./.github/actions/setup | |
| - name: Ensure package version consistency | |
| run: pnpm manypkg check | |
| - name: Lint codebase | |
| run: pnpm lint | |
| - name: Check format | |
| run: pnpm format:check | |
| - name: Run tests | |
| run: turbo run test | |
| env: | |
| OPENAI_API_KEY: 'sk-testing-key' | |
| DATABASE_URL: 'file:./dev.db' | |
| - name: Run tests with coverage | |
| run: turbo run test:coverage | |
| env: | |
| OPENAI_API_KEY: 'sk-testing-key' | |
| DATABASE_URL: 'file:./dev.db' | |
| - name: Install Playwright browsers | |
| working-directory: ./packages/ui | |
| run: pnpm exec playwright install --with-deps chromium | |
| - name: Run browser tests with coverage | |
| working-directory: ./packages/ui | |
| run: pnpm test:browser:coverage | |
| - name: Upload coverage artifacts | |
| if: github.event_name == 'pull_request' | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: coverage-reports | |
| path: | | |
| packages/*/coverage/ | |
| retention-days: 1 | |
| - name: Upload browser test screenshots | |
| if: failure() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: browser-test-screenshots | |
| path: packages/ui/tests/browser/**/__screenshots__/ | |
| retention-days: 7 | |
| e2e: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup project | |
| uses: ./.github/actions/setup | |
| - name: Build packages | |
| run: | | |
| pnpm --filter @opensaas/stack-core build | |
| pnpm --filter @opensaas/stack-auth build | |
| pnpm --filter @opensaas/stack-ui build | |
| pnpm --filter @opensaas/stack-cli build | |
| - name: Install Playwright browsers | |
| run: pnpm exec playwright install --with-deps chromium | |
| - name: Run E2E tests | |
| run: pnpm test:e2e | |
| env: | |
| CI: true | |
| DATABASE_URL: 'file:./dev.db' | |
| BETTER_AUTH_URL: http://localhost:3000 | |
| BETTER_AUTH_SECRET: 'secret-for-teating-in-github-actions-with-numbers1234' | |
| NEXT_PUBLIC_APP_URL: 'http://localhost:3000' | |
| - name: Upload Playwright report | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: playwright-report | |
| path: playwright-report/ | |
| retention-days: 7 | |
| - name: Upload test results | |
| if: always() | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: test-results | |
| path: test-results/ | |
| retention-days: 7 | |
| coverage: | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'pull_request' | |
| needs: test | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Download coverage artifacts | |
| uses: actions/download-artifact@v7 | |
| with: | |
| name: coverage-reports | |
| path: packages/ | |
| - name: Report coverage for Core Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/core | |
| name: 'Core Package Coverage' | |
| - name: Report coverage for UI Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/ui | |
| name: 'UI Package Coverage' | |
| - name: Report coverage for CLI Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/cli | |
| name: 'CLI Package Coverage' | |
| - name: Report coverage for Auth Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/auth | |
| name: 'Auth Package Coverage' | |
| - name: Report coverage for Storage Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/storage | |
| name: 'Storage Package Coverage' | |
| - name: Report coverage for RAG Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/rag | |
| name: 'RAG Package Coverage' | |
| - name: Report coverage for Storage S3 Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/storage-s3 | |
| name: 'Storage S3 Package Coverage' | |
| - name: Report coverage for Storage Vercel Package | |
| uses: davelosert/vitest-coverage-report-action@v2 | |
| with: | |
| working-directory: ./packages/storage-vercel | |
| name: 'Storage Vercel Package Coverage' |