The upgrading guide promises a safer update than the code delivers. Three statements in docs/operations/upgrading.md don't match what talm init --update does in v0.35.0, and one of them hides a silent config loss.
- Line 27 says "Your
values.yaml, secrets, and node files are left untouched." The cozystack preset ships values.yaml, and step 2 of updateTalmLibraryChart sends every preset file through updateFileWithConfirmation, so accepting the prompt or passing --force resets it. An emptied endpoint fails the next render. An emptied floatingIP fails nothing, and the config comes out with no VIP.
- Lines 71 and 74 promise an interactive diff that lets you merge what you want. The prompt is
File %s differs from template. Overwrite? [y/N] and nothing else. No diff is shown, and the choice is the whole file or nothing.
- Line 57 says
--update rewrites Chart.yaml "keeping only name and version". Only name is read from the existing file. version is filled from Config.InitOptions.Version, which is the talm binary's own version.
The code is the same at v0.35.0 and on main. I reproduced all three with talm built from the v0.35.0 tag, running talm init --update --preset cozystack --force on a customised project: values.yaml came back with endpoint, floatingIP and advertisedSubnets at preset defaults, an edited templates/controlplane.yaml was reverted, and Chart.yaml came back with the binary's version.
Either the page or the code has to move. Correcting the three sentences is the small fix. If the documented behaviour is the intended one, --update should show the diff before asking and leave values.yaml alone, and that is a code change. cozystack/website#703 documents what the code does today, so until one side moves the two disagree.
The upgrading guide promises a safer update than the code delivers. Three statements in
docs/operations/upgrading.mddon't match whattalm init --updatedoes in v0.35.0, and one of them hides a silent config loss.values.yaml, secrets, and node files are left untouched." The cozystack preset shipsvalues.yaml, and step 2 ofupdateTalmLibraryChartsends every preset file throughupdateFileWithConfirmation, so accepting the prompt or passing--forceresets it. An emptiedendpointfails the next render. An emptiedfloatingIPfails nothing, and the config comes out with no VIP.File %s differs from template. Overwrite? [y/N]and nothing else. No diff is shown, and the choice is the whole file or nothing.--updaterewritesChart.yaml"keeping onlynameandversion". Onlynameis read from the existing file.versionis filled fromConfig.InitOptions.Version, which is the talm binary's own version.The code is the same at v0.35.0 and on main. I reproduced all three with talm built from the v0.35.0 tag, running
talm init --update --preset cozystack --forceon a customised project:values.yamlcame back withendpoint,floatingIPandadvertisedSubnetsat preset defaults, an editedtemplates/controlplane.yamlwas reverted, andChart.yamlcame back with the binary's version.Either the page or the code has to move. Correcting the three sentences is the small fix. If the documented behaviour is the intended one,
--updateshould show the diff before asking and leavevalues.yamlalone, and that is a code change. cozystack/website#703 documents what the code does today, so until one side moves the two disagree.