ci: run the check job in a container so "postgres" resolves
On GitHub's hosted runners a job that isn't in a container can't reach a service by its name, so every database test failed with getaddrinfo EAI_AGAIN postgres. The check job now runs in node:24 (Gitea/Forgejo act_runner already runs jobs in containers) and installs ffmpeg so the sound and greeting tests run instead of skipping. The voicemail test's afterAll no longer throws when beforeAll failed. Checked locally by running the job's steps in node:24 next to a postgres:18-alpine reachable as "postgres": 481 passed, 5 skipped (ffmpeg). Task: M5-T3
This commit is contained in:
1 parent
9808a602a9
commit
80032cba1f
2 files changed
+6
-1
No files matched your search
@@ -8,6 +8,9 @@ on:
|
||||
jobs:
|
||||
check:
|
||||
runs-on: ubuntu-latest
|
||||
# Run in a container so the service is reachable by its name ("postgres") on every runner:
|
||||
# GitHub's hosted runners only give services a DNS name inside container jobs.
|
||||
container: node:24
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:18-alpine
|
||||
@@ -25,6 +28,8 @@ jobs:
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 24
|
||||
# Sound and greeting tests convert real audio (skipped without ffmpeg).
|
||||
- run: apt-get update -qq && apt-get install -y -qq --no-install-recommends ffmpeg
|
||||
- run: pnpm install --frozen-lockfile
|
||||
- run: pnpm lint
|
||||
- run: pnpm typecheck
|
||||
|
||||
Reference in new issue
Block a user