From 67c966adf2cbe15fbc0c349db0f4db2e99a3f377 Mon Sep 17 00:00:00 2001 From: gadgethd <111318106+gadgethd@users.noreply.github.com> Date: Sat, 19 Sep 2026 12:40:05 +0000 Subject: [PATCH] ci: restore frontend npm ci and post-E2E stack cleanup The smoke-step trap cleanup tore the stack down before the E2E steps ran, and the Playwright step had lost its npm ci, so E2E could never pass. --- .github/workflows/ci.yml | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ea86a45..e199e91 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -209,13 +209,6 @@ jobs: publisher_user="ci-e2e-publisher" publisher_password="ci-e2e-publisher-password" observer="CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" - cleanup() { - docker compose -f docker-compose.yml -f docker-compose.ci.yml \ - --project-name "$project" \ - --profile dev \ - down --volumes --remove-orphans - } - trap cleanup EXIT # Create each Argon2 entry independently. Updating an existing # password file with this image is not reliable on hosted runners. docker run --rm \ @@ -361,10 +354,19 @@ jobs: grep -q '^mqtt-packet-fanout-ok$' "$ws_log" - name: Install Playwright for E2E tests working-directory: frontend - run: npx playwright install --with-deps chromium + run: | + npm ci + npx playwright install --with-deps chromium - name: Run E2E tests against live stack working-directory: frontend run: npm run test:e2e + - name: Clean up live E2E stack + if: always() + run: | + docker compose -f docker-compose.yml -f docker-compose.ci.yml \ + --project-name "meshcore-ci-${GITHUB_RUN_ID}-${GITHUB_RUN_ATTEMPT}" \ + --profile dev \ + down --volumes --remove-orphans - name: Validate monitoring configuration run: | docker run --rm \