chore(deps): update actions/checkout action to v7 #3290
Workflow file for this run
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
| on: | |
| push: | |
| pull_request: | |
| workflow_call: | |
| inputs: | |
| ref: | |
| type: "string" | |
| required: true | |
| description: "The ref (branch or tag) to build" | |
| schedule: | |
| # Weekly Friday night run to catch external breakage (PyPI, CDN, etc.) | |
| - cron: "0 2 * * 5" # Every Friday at 2:00 AM UTC | |
| jobs: | |
| build-frontend: | |
| name: "Build frontend" | |
| runs-on: "ubuntu-latest" | |
| steps: | |
| - uses: "actions/checkout@v7" | |
| with: | |
| ref: "${{ inputs.ref }}" | |
| - uses: "actions/setup-node@v6" | |
| with: | |
| node-version: "lts/*" | |
| check-latest: true | |
| cache: "yarn" | |
| - run: "yarn install --frozen-lockfile --dev" | |
| - run: "yarn build" | |
| - uses: "actions/upload-artifact@v7" | |
| with: | |
| name: "frontend" | |
| path: "dist" | |
| retention-days: 5 | |
| build-backend: | |
| name: "Build backend" | |
| runs-on: "ubuntu-latest" | |
| steps: | |
| - uses: "actions/checkout@v7" | |
| with: | |
| ref: "${{ inputs.ref }}" | |
| - uses: "astral-sh/setup-uv@v8.2.0" | |
| - run: "export YACV_SKIP_FRONTEND_BUILD=true && uv sync --frozen" | |
| - run: "export YACV_SKIP_FRONTEND_BUILD=true && uv build" | |
| - uses: "actions/upload-artifact@v7" | |
| with: | |
| name: "wheel" | |
| path: "dist/*" | |
| retention-days: 5 | |
| build-logo: | |
| name: "Build logo" | |
| runs-on: "ubuntu-latest" | |
| steps: | |
| - uses: "actions/checkout@v7" | |
| with: | |
| ref: "${{ inputs.ref }}" | |
| - uses: "astral-sh/setup-uv@v8.2.0" | |
| - run: "export YACV_SKIP_FRONTEND_BUILD=true && uv run --frozen python yacv_server/logo.py" | |
| - uses: "actions/upload-artifact@v7" | |
| with: | |
| name: "logo" | |
| path: "assets/logo_build" | |
| retention-days: 5 | |
| build-example: | |
| name: "Build example" | |
| runs-on: "ubuntu-latest" | |
| steps: | |
| - uses: "actions/checkout@v7" | |
| with: | |
| ref: "${{ inputs.ref }}" | |
| - uses: "astral-sh/setup-uv@v8.2.0" | |
| - run: "export YACV_SKIP_FRONTEND_BUILD=true && uv run --frozen python example/object.py" | |
| env: | |
| YACV_DISABLE_SERVER: "true" # Ensure the server is not started during the example build | |
| - uses: "actions/upload-artifact@v7" | |
| with: | |
| name: "example" | |
| path: "export" | |
| retention-days: 5 | |
| e2e-test-frontend: | |
| name: "E2E tests" | |
| runs-on: "ubuntu-latest" | |
| steps: | |
| - uses: "actions/checkout@v7" | |
| with: | |
| ref: "${{ inputs.ref }}" | |
| - uses: "actions/setup-node@v6" | |
| with: | |
| node-version: "lts/*" | |
| check-latest: true | |
| cache: "yarn" | |
| - uses: "astral-sh/setup-uv@v8.2.0" | |
| - name: "Install frontend dependencies" | |
| run: "yarn install --frozen-lockfile --dev" | |
| - name: "Build frontend into yacv_server/frontend" | |
| run: "npx yarn build-only --outDir yacv_server/frontend" | |
| - name: "Install Playwright browsers" | |
| run: "npx playwright install chromium" | |
| - name: "Install backend dependencies" | |
| run: "uv sync --frozen" | |
| - name: "Run e2e tests" | |
| run: "npx playwright test" | |
| env: | |
| YACV_GRACEFUL_SECS_CONNECT: "0" | |
| YACV_GRACEFUL_SECS_WORK: "10" | |
| - uses: "actions/upload-artifact@v7" | |
| if: "always()" # Upload even if tests fail | |
| with: | |
| name: "e2e-screenshots" | |
| path: | | |
| screenshots/ | |
| test-results/ | |
| playwright-report/ | |
| .e2e_control_port | |
| retention-days: 30 |