Skip to content

chore(deps): bump dagger/kcl v0.103.0 → v0.114.0 in call-push-kustomize#90

Merged
patrick-hermann-sva merged 1 commit into
mainfrom
chore/bump-dagger-kcl-v0.114.0
May 18, 2026
Merged

chore(deps): bump dagger/kcl v0.103.0 → v0.114.0 in call-push-kustomize#90
patrick-hermann-sva merged 1 commit into
mainfrom
chore/bump-dagger-kcl-v0.114.0

Conversation

@patrick-hermann-sva
Copy link
Copy Markdown
Contributor

Summary

Bump dagger-kcl-module default in call-push-kustomize.yaml from v0.103.0 to v0.114.0 to pick up the parameter-newline fix (stuttgart-things/dagger#271, fixed by stuttgart-things/dagger#272, released as v0.114.0).

What the upstream fix does

v0.114.0 stops escaping newlines as the literal 2-character sequence \n when reading --parametersFile. The old jq -r '... gsub("\n"; "\\n") ...' hack corrupted any multi-line value: KCL received it as a single-line string with literal backslash-n chars, emitted a single-quoted multi-line scalar in the rendered ConfigMap, and downstream consumers got garbage because the YAML spec folds single-quoted multi-line scalar newlines into spaces.

Concrete impact

stuttgart-things/homerun2-git-pitcher ships a config.watchConfigYaml: | block in its test profile. Every release from v0.6.0 (April 2026) onward published a broken data: { watch-profile.yaml: 'github:\n token: ...' } ConfigMap that crashed the app at startup with yaml: mapping values are not allowed in this context. Surfaced by stuttgart-things/homerun2-git-pitcher#25 smoke.

After this bump merges and git-pitcher cuts its next release, the published kustomize OCI will ship a correct | block-literal scalar.

Scope

Only call-push-kustomize.yaml is bumped — that's the template that exercises the buggy --parametersFile code path. The other two templates referencing the kcl module (call-go-release.yaml, call-go-microservice-release.yaml at v0.82.1) only invoke the semantic function, which doesn't go through Run()'s parameter handling. Bumping those can be routine maintenance, separate PR.

Test plan

  • One-line diff; no behavioural change other than the module version pin
  • Validate by triggering a fresh git-pitcher PR after merge and inspecting the resulting kustomize OCI:
    oras pull ghcr.io/stuttgart-things/homerun2-git-pitcher-kustomize:pr-<num>-<sha>
    grep -A 8 watch-profile configmap-homerun2-git-pitcher-watch-config.yaml
    
    Expect: watch-profile.yaml: | (block literal), not watch-profile.yaml: '...' (single-quoted).

Refs stuttgart-things/dagger#271
Refs stuttgart-things/dagger#272
Refs stuttgart-things/homerun2-git-pitcher#25

🤖 Generated with Claude Code

…kustomize

v0.114.0 fixes the parameter-newline corruption bug
(stuttgart-things/dagger#271, fixed by stuttgart-things/dagger#272):
multi-line values from --parametersFile no longer get escaped as
literal \n via the jq gsub hack, so kustomize OCIs built from KCL
modules with multi-line config (e.g. an embedded YAML watch profile)
ship valid block-literal scalars instead of single-quoted multi-line
scalars that fold newlines into spaces on read.

Surfaced by stuttgart-things/homerun2-git-pitcher#25 smoke — the
git-pitcher kustomize OCI carries `config.watchConfigYaml: |` from
its test profile, and all releases from v0.6.0 onward shipped a
broken `data: { watch-profile.yaml: 'github:\n  token: ...' }`
ConfigMap that crashed the app on startup with
`yaml: mapping values are not allowed in this context`.

Other call-*.yaml templates that reference the kcl module
(call-go-release.yaml, call-go-microservice-release.yaml at
v0.82.1) only use the `semantic` function which doesn't exercise
the buggy code path — left as-is for separate maintenance.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@patrick-hermann-sva patrick-hermann-sva merged commit cac62a8 into main May 18, 2026
1 check passed
patrick-hermann-sva added a commit that referenced this pull request May 18, 2026
…ize (#91)

Required follow-up to the kcl-module bump in PR #90. The kcl module's
v0.114.0 release (which carries the parameter-newline fix from
stuttgart-things/dagger#272) bumped its engine requirement to v0.20.8.
With the previous v0.20.6 pin here, every push-kustomize workflow run
fails on module load with:

  module requires dagger v0.20.8, but you have v0.20.6

Surfaced on the first PR that re-ran the workflow after #90 landed
(stuttgart-things/homerun2-git-pitcher#30).

Co-authored-by: sthings user <sthings@dev-vm3.tiab.labda.sva.de>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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