245221bcb0
ci-deploy / build-deploy-test (push) Failing after 4m7s
Two CI fixes had been applied to ci-deploy.yml but never propagated: 1. release-verify.yml: install Playwright browsers before e2e `pnpm install --frozen-lockfile` only fetches the npm package; the chromium binary needs `playwright install --with-deps`. Without this the e2e step fails on a fresh runner with "browser not found". (mirrors ci-deploy commit6e7e931) 2. release.yml: exclude tests/eslint/** from the paranoid `pnpm test` typescript-eslint's project cache doesn't see runtime-generated probe files inside the runner container, so those config-drift guards pass locally but fail CI-only — same reason ci-deploy uses the exclude flag. (mirrors ci-deploy commit3fccd8e) Other ci-deploy specifics (pve-201 concurrency, /api pre-warm + tunnel diagnostics, CI_DEPLOY=1 quarantine env) intentionally stay ci-deploy- only: release-verify runs the full suite by design, and the other fixes are tied to ci-deploy's host/build path.
65 lines
2.0 KiB
YAML
65 lines
2.0 KiB
YAML
name: release-verify
|
|
|
|
# Workflow C: run after Jenkins has finished building (operator triggers manually).
|
|
# Probes the customer URL until it serves a fresh build, then runs the e2e suite
|
|
# against http://flights-ui.devwebzavod.ru with the console-error gate.
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
verify:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
env:
|
|
TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
|
|
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Notify start
|
|
if: ${{ env.TELEGRAM_BOT_TOKEN != '' }}
|
|
run: scripts/ci/notify-telegram.sh start release-verify
|
|
|
|
- name: Setup Node + pnpm
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version-file: '.nvmrc'
|
|
- uses: pnpm/action-setup@v4
|
|
|
|
- name: Install dependencies
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Wait for customer URL
|
|
id: wait_customer
|
|
run: scripts/ci/wait-for-url.sh http://flights-ui.devwebzavod.ru/ru-ru/onlineboard 60 5
|
|
|
|
- name: Install Playwright browsers
|
|
id: playwright_install
|
|
run: pnpm exec playwright install --with-deps chromium
|
|
|
|
- name: Run Playwright e2e against customer URL
|
|
id: e2e_customer
|
|
env:
|
|
BASE_URL: http://flights-ui.devwebzavod.ru
|
|
run: pnpm test:e2e
|
|
|
|
- name: Upload artifacts on failure
|
|
if: failure()
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: release-verify-failure-${{ github.run_id }}
|
|
path: |
|
|
playwright-report/
|
|
retention-days: 7
|
|
|
|
- name: Notify (success)
|
|
if: success() && env.TELEGRAM_BOT_TOKEN != ''
|
|
run: scripts/ci/notify-telegram.sh ok release-verify "customer URL e2e green"
|
|
|
|
- name: Notify (failure)
|
|
if: failure() && env.TELEGRAM_BOT_TOKEN != ''
|
|
run: scripts/ci/notify-telegram.sh fail release-verify "see Gitea run for Playwright report"
|