substitutions: _PUBLIC_SITE_INDEXING: "false" steps: - id: preview-config-preflight name: python:3.12-slim entrypoint: python env: ["DEPLOY_PUBLIC_SITE_INDEXING=$_PUBLIC_SITE_INDEXING"] args: ["scripts/gcp/deployment_contract.py", "--scope", "preview"] - id: backend-checks name: python:3.12-slim entrypoint: sh waitFor: ["preview-config-preflight"] args: [ "-c", "cd backend && python -m pip install --requirement requirements-dev.lock && python -m pip install --no-deps --no-build-isolation --editable . && python -m ruff check . && python -m ruff format --check . && python -m pytest && python -m unittest discover -s ../infra/gcp/tests -p 'test_cloudbuild_yaml.py'", ] - id: deployment-contract-tests name: python:3.12-slim entrypoint: python waitFor: ["preview-config-preflight"] args: [ "-m", "unittest", "discover", "-s", "infra/gcp/tests", "-p", "test_deployment*.py", ] - id: frontend-checks name: cypress/browsers:node-24.15.0-chrome-148.0.7778.178-1-ff-151.0.2-edge-148.0.3967.83-1@sha256:605b5e51f42ae27cee8be859562ed4e281ccee69a74b7929bb899a4234835a40 entrypoint: sh waitFor: ["preview-config-preflight"] args: [ "-c", "cd frontend && npm ci && npm run format:check && npm run lint && npm test -- --karma-config=karma.ci.conf.cjs --browsers=ChromeHeadlessCI && npm run build:development", ]