Skip to content

ci: publish web-app-serve helm wrapper chart#8

Merged
thenav56 merged 3 commits into
developfrom
feat/web-app-serve-helm
Jul 17, 2026
Merged

ci: publish web-app-serve helm wrapper chart#8
thenav56 merged 3 commits into
developfrom
feat/web-app-serve-helm

Conversation

@thenav56

@thenav56 thenav56 commented Jul 17, 2026

Copy link
Copy Markdown
Member

Changes

The web-app-serve docker/runtime path already exists upstream on develop
(v2 env.ts, base image as-is, APP_ prefix). This PR adds only the Helm CI
publish path (CHECKLIST §7 fast path — a single ci: commit, nothing app-side
changes).

ci: — publish helm wrapper chart via web-app-serve-action@v0.2.0

  • Workflow renamed publish-web-app-serve.ymlhelm-publish.yaml; action
    bumped v0.1.1v0.2.0 (first helm-capable release; helm_publish: true).
  • Permissions widened: added contents: read (a permissions: block zeroes
    unlisted scopes, so checkout needs it) + pull-requests: read (the provenance
    writer resolves the PR from the commit). packages: write and
    submodules: recursive kept.
  • New wrapper chart web-app-serve/helm/ (ercs-client-helm), depending on
    oci://ghcr.io/toggle-corp/web-app-serve-helm:0.2.1 aliased app. CI stamps
    the image name/tag + provenance annotations and pushes the chart to GHCR on
    every develop push: oci://ghcr.io/toggle-corp/ercs-client-helm, version
    0.0.1-develop.c<sha>.

Verification

  • Local helm check (mirrors CI's smoke render): helm dependency update +
    helm lint + helm template (with --set app.ingress.hostname,
    app.ingress.ingressClassName, app.image.name) all pass.
  • The docker/compose placeholder path was verified upstream when it was added;
    this change does not touch it, so §9's docker checks were not re-run.

TODO before/after merge

  • Remove the temporary feat/web-app-serve-helm entry from
    on.push.branches in .github/workflows/helm-publish.yaml — it exists
    only to test the publish workflow end-to-end on this branch (the slash in
    the branch name makes it publish to ghcr.io/toggle-corp/ercs-client-dev
    / ercs-client-dev-helm).

Notes for deployers (stock APP_ apply-config limitations, pre-existing)

This repo uses the base image's stock apply-config (no custom apply-config.sh),
which has no sed-metachar escaping and no blank-unfilled step (upstream FIXME).
These are inherent to the existing docker path (not introduced here):

  • Avoid & or | in any runtime APP_* value.
  • Set every APP_* var explicitly at deploy time (use "" to opt out of
    optional ones); a truly-unset var leaks its literal placeholder into the
    bundle.

thenav56 added 3 commits July 16, 2026 22:28
Migrate the web-app-serve publish workflow to the helm-capable action and
add a thin wrapper Helm chart so CI publishes both the Docker image and a
versioned chart to GHCR.

- Rename publish-web-app-serve.yml -> helm-publish.yaml
- Bump toggle-corp/web-app-serve-action v0.1.1 -> v0.2.0 (helm-capable)
- Enable helm_publish: true
- Grant contents: read + pull-requests: read (checkout + provenance writer);
  keep submodules: recursive
- Add web-app-serve/helm wrapper chart (ercs-client-helm) depending on
  web-app-serve-helm 0.1.1 aliased app
- Temporarily trigger the workflow on feat/web-app-serve-helm to test the
  integration end-to-end (marked TODO to remove after merge)
@thenav56
thenav56 merged commit 39be67b into develop Jul 17, 2026
3 checks passed
@thenav56
thenav56 deleted the feat/web-app-serve-helm branch July 17, 2026 14:42
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