DEVEX-1630: shared PHP build orchestrators (foundation)#129
Conversation
…tore PHP portion)
PR SummaryLow Risk Overview Two new
Design and rollout docs are added under Reviewed by Cursor Bugbot for commit cf8e396. Bugbot is set up for automated code reviews on this repo. Configure here. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
There are 2 total unresolved issues (including 1 from previous review).
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 6c6ac70. Configure here.
|
Thanks Bugbot — both valid, fixed in 42a605b (
|

Phase 1A of DEVEX-1630 — the shared-workflow foundation only. No service repos are touched in this PR; these reusable workflows have no effect until a caller references them (pilots follow in separate PRs).
What this adds
build-php-v1.yaml(new) — v1/legacy PHP build orchestrator. Spinecalculate-tag → build → tag-and-release, exposes atagoutput. Thebuildjob matrixes over animagesJSON array and callsphp-build-push.yamlonce per image (app / nginx / profiler / apache), reproducing each repo's exact current tags.build-php-laravel.yaml(new) — Laravel PHP build orchestrator. Same spine;buildmakes one call to the existingphp-laravel-build-push.yaml(app + webserver, artisan-cached).php-build-push.yaml(modified) — addedimage_name,extra_tag,cache_typeinputs and modernizedbuildx@v3 / login@v3 / build-push@v6. Buildx cache is now keyed per resolved image name (registry ref / gha scope) so matrix legs don't collide. No existing org consumers, so this is backward-safe.Both orchestrators call their sibling helper via the local
./.github/workflows/...path, so the nested call resolves at the orchestrator's own ref (self-consistent at@mainor on a branch).Validation
actionlintclean on all three files.Not in this PR
Per-repo
Build.yamlmigrations (license_api + returns-api pilots, then fan-out incl. webstore last) land as separate PRs after this merges. Phase 0 integration-deploy gate is tracked under DEVEX-1629.Design + plan:
docs/superpowers/specs/2026-06-08-unify-php-build-workflows-design.md,docs/superpowers/plans/2026-06-08-unify-php-build-workflows.md.🤖 Generated with Claude Code