ci: the install rehearsal needs compose v2, and says so
The v1 fallback I added a commit ago cannot work: deploy/compose/docker-compose.yml
uses v2-only syntax — a top-level `name:` and long-form
`env_file: {path, required}` — so docker-compose 1.29 rejects the file outright
("'name' does not match any of the regexes"). A fallback that always fails is
worse than no fallback, so the script now requires v2 and fails immediately with
what to do about it.
$COMPOSE overrides the detection. gw-04 is deliberately left WITHOUT a
`docker compose` plugin: installing one system-wide would flip the production
rolling deploy (clawmates-deploy.sh prefers v2 when present) off docker-compose
v1 as an invisible side effect of a release change. The runner gets a standalone
v2 binary at /opt/act-runner/bin/docker-compose and the workflow passes it in,
so prod keeps rolling exactly as it did.
Verified on gw-04: standalone v2.32.4 runs, and `docker compose` still resolves
to nothing, so clawmates-deploy.sh takes its v1 branch unchanged.
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5
parent
9441cf401c
commit
41854c70e1
@@ -157,7 +157,14 @@ jobs:
|
||||
docker tag "clawmates/broker:$VERSION" clawmates/broker:latest
|
||||
# Absolute path: the script cds around, and it needs the binary we
|
||||
# already built rather than a cargo this host does not have.
|
||||
CLAWMATES_BUNDLER="$PWD/.tools/clawmates-bundler" ./scripts/rehearse-install.sh
|
||||
# COMPOSE points at a STANDALONE v2 binary. gw-04 intentionally has no
|
||||
# `docker compose` plugin: installing one would switch the production
|
||||
# rolling deploy (clawmates-deploy.sh) off docker-compose v1 as a side
|
||||
# effect. The compose file needs v2 syntax, so the rehearsal gets its
|
||||
# own copy rather than changing what prod rolls with.
|
||||
CLAWMATES_BUNDLER="$PWD/.tools/clawmates-bundler" \
|
||||
COMPOSE=/opt/act-runner/bin/docker-compose \
|
||||
./scripts/rehearse-install.sh
|
||||
|
||||
# Gitea's release API, not softprops/action-gh-release (GitHub-only).
|
||||
# Create-or-reuse, so a re-run of the same tag updates instead of 409ing.
|
||||
|
||||
Reference in New Issue
Block a user