5f9c202d65
CI / test (push) Successful in 6s
Repot kom in under den gemensamma släppprocessen i1081260utan att någon dokumentation sa det. README hade Kubernetes och Development men ingenting om vägen från en commit till något som rullar i klustret, och till skillnad från riksdata och rd-web fanns ingen CLAUDE.md alls. Två saker om just det här repot är värda att stå skrivna, eftersom båda avviker från syskonrepona och båda upptäcktes mitt i ett släpp: Pipelinen har ingen bildskanning. riksdata och rd-web kör trivy efter publiceringen; .gitea/workflows/release.yaml här har test, binaries, image och chart och inget mer. Ett grönt släpp är alltså inget belägg för att bilden är fri från kända sårbarheter, och en släppnot får inte antyda det. Wrapperchartets values.yaml har två tag:-rader, appbilden och python-sidovagnen för säkerhetskopiering, så chart-bump behöver --image för att veta vilken som flyttas. Utan den vägrar den, vilket är rätt. Samtidigt: varför det inte finns några build- eller push-mål, varför chartet publiceras enbart från taggen (766f439), och varför make test kör -race när CI inte gör det. Helm-exemplet pekade fortfarande på 0.9.0 och går till 0.9.2. Claude-Session: https://claude.ai/code/session_01S7R4gWTz5wh5xCY4nCSJjN
33 lines
1.4 KiB
Markdown
33 lines
1.4 KiB
Markdown
## Release
|
|
|
|
Say **"Release"** (or "Release X.Y.Z") and the `release` skill runs it: commit, push, tag,
|
|
wait for the pipeline, then open the wrapper-chart PR against `Ryuvia/charts`. It stops
|
|
there — merging and the Flux reconcile stay manual, deliberately.
|
|
|
|
Preconditions and the plan, without side effects:
|
|
|
|
```sh
|
|
~/.claude/skills/release/scripts/release-preflight # state + suggested version
|
|
~/.claude/skills/release/scripts/release-preflight vX.Y.Z # validate that release
|
|
```
|
|
|
|
Config is `.release.conf` here plus `make release-vars`. The process itself lives in
|
|
`~/.claude/skills/release/`; why it is shaped this way is in README.md §Releasing.
|
|
|
|
Two things about this repo specifically:
|
|
|
|
- **The pipeline has no image scan.** `.gitea/workflows/release.yaml` runs `test`,
|
|
`binaries`, `image` and `chart`. A green release run is not evidence the image is
|
|
CVE-clean, and a release note must not imply it is.
|
|
- **The wrapper chart has two `tag:` lines** — the app image and the python backup sidecar —
|
|
so `chart-bump` needs `--image "$IMAGE"` to know which one moves.
|
|
|
|
## Checks
|
|
|
|
`make fmt lint test helm-lint` mirrors `.gitea/workflows/ci.yaml`, so a green gate here means
|
|
a green pipeline there. The one deliberate difference is `-race`, which CI does not run; see
|
|
the comment on the `test` target.
|
|
|
|
There are deliberately no `build`/`push`/`helm-push` targets — the workflow owns publishing,
|
|
and it builds multi-arch. Publishing happens by pushing a tag.
|