fix(compose): drop empty environment: key on runner service - #564
Merged
Conversation
The runner service had a bare `environment:` key with no value, which older docker compose versions tolerated as a no-op but newer versions reject with: validating docker-compose.yml: services.runner.environment must be a mapping This surfaced when the new ZAP baseline workflow (added in #525) tried to run `docker compose up` in CI. The runner doesn't actually need any env vars passed via compose — RUNNER_WORKER_ID and RUNNER_MAX_JOBS are referenced in the `command:` block and substituted from the shell at parse time. Remove the empty key entirely. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
docker-compose.ymlhad a bareenvironment:key with no value on therunnerservice. Newer docker compose versions reject this with:```
validating docker-compose.yml: services.runner.environment must be a mapping
```
This surfaced when the new ZAP baseline workflow (added in #525) tried to run `docker compose up` in CI — the first place in CI that exercises `docker compose up` against this file. The existing `docker-build.yml` only does `docker build`, which doesn't validate compose schema.
The runner doesn't need any env vars passed via compose — `RUNNER_WORKER_ID` and `RUNNER_MAX_JOBS` are referenced in the `command:` block and substituted from the shell at parse time. Removing the empty key is the simplest correct fix.
Test plan
🤖 Generated with Claude Code