Skip to content

Commit b2cb5cb

Browse files
turegjorupclaude
andcommitted
ci: pre-pull phpfpm+mariadb images in PHPUnit, Doctrine and API-spec jobs
These jobs run `docker compose run phpfpm` without --no-deps, which starts mariadb (depends_on) — so the two images were pulled serially on demand inside the first step (~30s). Pull them once up front in parallel, mirroring the Playwright job. The Doctrine Postgres job is left as-is: it builds phpfpm locally (pdo_pgsql) rather than pulling, so there is no parallel pull to gain. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 1cc39d1 commit b2cb5cb

4 files changed

Lines changed: 22 additions & 0 deletions

File tree

.github/workflows/apispec.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ jobs:
5050
- name: Setup network
5151
run: docker network create frontend
5252

53+
- name: Pull container images
54+
# Pull phpfpm and mariadb up front, in parallel, instead of on demand:
55+
# `docker compose run phpfpm` starts mariadb (depends_on), so otherwise
56+
# the two images are pulled serially inside the first step (~30s).
57+
run: docker compose pull --quiet phpfpm mariadb
58+
5359
- name: Install Dependencies
5460
run: docker compose run --rm phpfpm composer install
5561

.github/workflows/doctrine.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,13 @@ jobs:
7777
- name: Setup network
7878
run: docker network create frontend
7979

80+
- name: Pull container images
81+
# Pull phpfpm and mariadb up front, in parallel, instead of on demand:
82+
# `docker compose run phpfpm` starts mariadb (depends_on), so otherwise
83+
# the two images are pulled serially inside the first step (~30s). The
84+
# postgres job below builds phpfpm locally instead, so it is not pre-pulled.
85+
run: docker compose pull --quiet phpfpm mariadb
86+
8087
- name: "[prod] Composer install"
8188
run: docker compose run --rm -e APP_ENV=prod phpfpm composer install --no-dev -o
8289

.github/workflows/phpunit.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ jobs:
5050
- name: Setup network
5151
run: docker network create frontend
5252

53+
- name: Pull container images
54+
# Pull phpfpm and mariadb up front, in parallel, instead of on demand:
55+
# `docker compose run phpfpm` starts mariadb (depends_on), so otherwise
56+
# the two images are pulled serially inside the first step (~30s).
57+
run: docker compose pull --quiet phpfpm mariadb
58+
5359
- name: Install Dependencies
5460
run: docker compose run --rm phpfpm composer install
5561

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ All notable changes to this project will be documented in this file.
1010
container images once up front in parallel instead of on demand serially across steps
1111
(~90s of pulls overlapped), and dropped the redundant `playwright install --with-deps` step
1212
(the pinned Playwright image already ships the matching browsers).
13+
- Pre-pull the `phpfpm` and `mariadb` images in parallel in the PHPUnit, Doctrine and API-spec
14+
CI jobs (running `phpfpm` starts `mariadb` via `depends_on`, so the two were otherwise pulled
15+
serially on demand). The Doctrine Postgres job is unaffected — it builds `phpfpm` locally.
1316
- Removed a dead statement in `MediaRepository::getPaginator()` that referenced the undefined
1417
variables `$page` and `$itemsPerPage`; the computed value was never used.
1518
- Fixed inverted user-type guard in `UserService::activateExternalUser()`: the "user is not of

0 commit comments

Comments
 (0)