diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c4bb3da..3851552 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -69,6 +69,11 @@ jobs: rm -rf packages/boundary-fixture pnpm boundary:audit + - name: Audit quickstart database bootstrap + run: | + grep -F 'image: timescale/timescaledb:2.28.2-pg15' docker-compose.quickstart.yml + grep -F 'cat /proc/1/comm' docker-compose.quickstart.yml + lint: name: Lint runs-on: ubuntu-24.04 diff --git a/docker-compose.quickstart.yml b/docker-compose.quickstart.yml index 15e898f..03f52e5 100644 --- a/docker-compose.quickstart.yml +++ b/docker-compose.quickstart.yml @@ -1,6 +1,6 @@ services: postgres: - image: timescale/timescaledb:latest-pg15 + image: timescale/timescaledb:2.28.2-pg15 environment: POSTGRES_DB: humanly_dev POSTGRES_USER: humanly_user @@ -9,7 +9,9 @@ services: volumes: - quickstart_postgres_data:/var/lib/postgresql/data healthcheck: - test: ["CMD-SHELL", "pg_isready -U humanly_user -d humanly_dev"] + # Timescale starts a temporary server during first-run tuning. Wait for + # the final PostgreSQL process so migrations cannot race its restart. + test: ["CMD-SHELL", "test \"$$(cat /proc/1/comm)\" = postgres && pg_isready -U humanly_user -d humanly_dev"] interval: 10s timeout: 5s retries: 10 @@ -28,7 +30,7 @@ services: restart: unless-stopped quickstart-migrate: - image: timescale/timescaledb:latest-pg15 + image: timescale/timescaledb:2.28.2-pg15 environment: PGHOST: postgres PGDATABASE: humanly_dev