Skip to content

fix(rybbit): stop redeclaring the included clickhouse service - #228

Merged
ineedjet merged 1 commit into
mainfrom
fix-rybbit-clickhouse-compose-include-conflict
Oct 10, 2026
Merged

ineedjet merged 1 commit into
mainfrom
fix-rybbit-clickhouse-compose-include-conflict

Conversation

@ineedjet

Copy link
Copy Markdown
Collaborator

Summary

  • v1.4.1's fix for apps/rybbit: clickhouse missing CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1, rybbit_query self-provisioning likely fails #225 broke deploy outright: apps/rybbit/docker-compose.yml redeclared services.clickhouse (brought in via clickhouse-26.5.yml's include:) just to add CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT, and Docker Compose rejects overriding an include:-d service unconditionally on anything before v5.0.0 - confirmed against a real docker-compose v2.40.3 binary (what's actually running on the target host), where it fails with services.clickhouse conflicts with imported resource; my own local v5.5.1 merges it fine, so the two releases genuinely disagree and the older one is what matters here
  • Reported in a comment on apps/rybbit: clickhouse missing CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1, rybbit_query self-provisioning likely fails #225 after a real deploy attempt failed with this exact error - docker compose pull fails before touching anything, so no actual damage, but the fix as shipped couldn't be deployed
  • Move CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT: 1 directly into clickhouse-26.5.yml's own environment: block instead - no service redeclaration anywhere, so the include/override conflict class doesn't apply. rybbit is this template's only consumer today, so there's no other app being granted unwanted self-management rights by this

Test plan

  • Downloaded the real docker-compose v2.40.3 darwin-aarch64 binary (matching the target host) and tested against a scratch copy of apps/ (never touching the real repo's .env, which doesn't exist locally): the broken shape reproduces services.clickhouse conflicts with imported resource on config; the fixed shape resolves cleanly and docker compose pull proceeds past config parsing
  • Pre-commit hooks (yamllint) pass

🤖 Generated with Claude Code

v1.4.1's fix for #225 broke deploy outright: apps/rybbit/docker-compose.yml
redeclared services.clickhouse (brought in via clickhouse-26.5.yml's
include:) just to add one environment key, and Docker Compose rejects
that unconditionally on anything before v5.0.0 with "services.clickhouse
conflicts with imported resource" - confirmed failing on v2.40.3 (what's
actually running on the target host) and passing on v5.5.1, so the two
Compose releases disagree and the older one is what matters here.
`docker compose pull` fails before touching anything, so the botched
release caused no actual damage, but it can't be deployed as shipped.

Move CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 directly into
clickhouse-26.5.yml's own environment block instead - no service
redeclaration anywhere, so the include/override conflict class doesn't
apply. rybbit is this template's only consumer today, so there's no
other app to grant unwanted self-management rights to.

Verified against a real docker-compose v2.40.3 binary (matching the
target host) in a scratch copy of apps/: `config` resolves without the
conflict error, and `pull` proceeds past config parsing.

Fixes #225 (again)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@ineedjet
ineedjet merged commit 0f26ba7 into main Oct 10, 2026
5 checks passed
@ineedjet
ineedjet deleted the fix-rybbit-clickhouse-compose-include-conflict branch October 10, 2026 21:20
@ineedjet ineedjet mentioned this pull request Oct 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant