From d1b51074787ae8857b09a5e432cb651046b8005f Mon Sep 17 00:00:00 2001 From: Jennie Robinson Faber Date: Fri, 1 May 2026 00:23:14 +0100 Subject: [PATCH] chore(ci): capture server stderr + dump on failure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Backgrounding 'node .output/server/index.mjs &' swallowed startup crashes — failures presented as a useless 30s 'Wait for server' timeout. Pipe stderr to a log file and cat it on failure so the next crash is one click away. --- .forgejo/workflows/test.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.forgejo/workflows/test.yml b/.forgejo/workflows/test.yml index bf095cc..d78249b 100644 --- a/.forgejo/workflows/test.yml +++ b/.forgejo/workflows/test.yml @@ -44,11 +44,14 @@ jobs: - run: npx playwright install --with-deps chromium - run: npm run build - name: Start server - run: node .output/server/index.mjs & + run: node .output/server/index.mjs > /tmp/server.log 2>&1 & env: PORT: 3000 - name: Wait for server run: timeout 30 sh -c 'until curl -sf http://localhost:3000; do sleep 1; done' + - name: Server log on failure + if: failure() + run: cat /tmp/server.log || true - run: npx playwright test --ignore-snapshots - uses: actions/upload-artifact@v4 if: failure() @@ -98,11 +101,14 @@ jobs: - run: npx playwright install --with-deps chromium - run: npm run build - name: Start server - run: node .output/server/index.mjs & + run: node .output/server/index.mjs > /tmp/server.log 2>&1 & env: PORT: 3000 - name: Wait for server run: timeout 30 sh -c 'until curl -sf http://localhost:3000; do sleep 1; done' + - name: Server log on failure + if: failure() + run: cat /tmp/server.log || true - run: npx playwright test e2e/visual/ - uses: actions/upload-artifact@v4 if: failure()