refactor(deploy)!: rename mesh to studio in helm, compose and images#4655
Open
viktormarinho wants to merge 1 commit into
Open
refactor(deploy)!: rename mesh to studio in helm, compose and images#4655viktormarinho wants to merge 1 commit into
viktormarinho wants to merge 1 commit into
Conversation
viktormarinho
force-pushed
the
chore/demesh-09-deploy-infra
branch
from
July 20, 2026 14:45
723850b to
0f5c31c
Compare
De-mesh task 09 (deploy/infra). Renames the remaining "mesh" identifiers in deploy/, tests/multi-pod and the CI wiring that references them: - chart-deco-studio: configMap.meshConfig -> configMap.studioConfig (breaking for values files; a fail-guard rejects the old key with a clear message). Chart 0.12.2 -> 0.13.0. - Dispatch role env: the chart now sets STUDIO_DISPATCH_ROLE as the canonical variable and keeps MESH_DISPATCH_ROLE as an alias so both pre- and post-#4645 images work; both names are reserved. - sandbox-env: mesh.* values block -> studio.* (breaking for values / --set flags; fail-guard on the old key). Chart 0.9.5 -> 0.10.0. Prose/comments de-meshed across templates, README, examples and the housekeeper script; release-sandbox-charts.yaml install snippet updated to --set studio.*. - tests/multi-pod: compose services mesh-1/2/3 -> studio-1/2/3 (and POD_NAME, YAML anchors), with the PODS constants, PodName type and scenario literals renamed to match; multi-pod.yml log dump updated. - /app/data/mesh.db is intentionally KEPT: it is a persisted sqlite file on existing volumes and renaming it would orphan data. apps/mesh directory paths, MESH_* env vars in tests/resilience (PR #4645), and the @decocms/mesh package/workflow names are out of scope here (tasks 10 / other open de-mesh PRs). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
viktormarinho
force-pushed
the
chore/demesh-09-deploy-infra
branch
from
July 21, 2026 15:44
0f5c31c to
c35dc4d
Compare
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
De-mesh task 09 (deploy / infra). The chart name (
chart-deco-studio) and image names (ghcr.io/decocms/studio/*) were already renamed in the repo-rename pass, so this PR finishes the remaining "mesh" identifiers indeploy/,tests/multi-podand the CI wiring that references them.Out of scope (owned by other open de-mesh PRs / task 10):
apps/meshdirectory paths,MESH_*env vars intests/resilience(#4645),@decocms/meshnpm package +release-mesh.yaml/publish-mesh-sdk-npm.yamlworkflow names (#4653 / task 10).External-contract renames — ops coordination required
configMap.meshConfigconfigMap.studioConfigMESH_DISPATCH_ROLESTUDIO_DISPATCH_ROLE(canonical) +MESH_DISPATCH_ROLEkept as aliasSTUDIO_*fallback). No image/chart ordering constraint. Follow-up: drop theMESH_alias once all deployed images readSTUDIO_*. Both names are now reserved (chart rejects them inenv/worker.env).mesh.*(mesh.namespace,mesh.serviceAccountName,mesh.serviceName,mesh.servicePort,mesh.podSelectorLabels)studio.*--set mesh.*flags tostudio.*before upgrading to chart 0.10.0. Fail-guard rejects the old block. Therelease-sandbox-charts.yamlinstall snippet now prints--set studio.*./app/data/mesh.dbchart-deco-studio,ghcr.io/decocms/studio/{studio,studio-nginx,s3-sync}mesh-1/2/3studio-1/2/3Chart version bumps:
chart-deco-studio0.12.2 → 0.13.0,sandbox-env0.9.5 → 0.10.0 (both breaking-values releases).Changes
meshConfig→studioConfigacross values/templates/README; dualSTUDIO_DISPATCH_ROLE/MESH_DISPATCH_ROLEenv in API + worker deployments; reserved-var validation covers both names; fail-guard for the old values key.mesh.*→studio.*values block (+ fail-guard); prose/comments de-meshed in templates, values, README, examples, housekeeper script; Chart description updated.POD_NAMEmesh-N→studio-N;PODS.MESH_N→PODS.STUDIO_N,PodNametype and scenario literals renamed (lexicographic leader orderingstudio-1 < studio-2 < studio-3is preserved, so projector-parity assumptions hold).multi-pod.ymllog-dump service names;release-sandbox-charts.yamlinstall snippet.tests/resilienceneeded no changes (its compose has no mesh service names;MESH_CLUSTER_URLthere belongs to refactor: rename MESH_* env vars to STUDIO_* with fallback #4645).Testing
helm lint+helm templateon both charts (default, postgres, andexamples/values-kind.yamlvalues) — render OK; both fail-guards and the reserved-var check verified to fail with the intended messages; rendered manifests show both dispatch-role vars.docker compose -f tests/multi-pod/docker-compose.yml config -qand... tests/resilience/docker-compose.yml config -q— OK.bun run fmt(clean),bun run lint(0 errors),bun run check(all workspaces pass).🤖 Generated with Claude Code
Summary by cubic
Renamed remaining "mesh" identifiers to "studio" across Helm charts, Docker Compose (multi-pod), and CI. Bumps
chart-deco-studioto 0.13.0 andsandbox-envto 0.10.0 with fail-guards; update values before upgrading.Migration
chart-deco-studio: renameconfigMap.meshConfig→configMap.studioConfig(templates hard-fail on the old key). Chart sets bothSTUDIO_DISPATCH_ROLE(canonical) andMESH_DISPATCH_ROLE(alias); both names are reserved inenvandworker.env. SQLite path stays/app/data/mesh.db.sandbox-env: renamemesh.*→studio.*(namespace, serviceAccountName, serviceName, servicePort) before upgrading; the chart fails ifmesh.*is present. Release snippet now prints--set studio.*.studio-1/2/3.Refactors
deploy/helm/studio: values/README/templates moved tostudioConfig; explicit fail onconfigMap.meshConfig; API and worker deployments setSTUDIO_DISPATCH_ROLE+MESH_DISPATCH_ROLE; reserved-var checks updated.deploy/helm/sandbox-env: prose/comments de-meshed across templates, values, README, examples, housekeeper; RBAC adds a fail-guard if.Values.meshis set; preview Gateway docs clarified.mesh-1/2/3→studio-1/2/3in compose, constants, scenarios; workflow log-dump targets updated.Written for commit c35dc4d. Summary will update on new commits.