Skip to content

feat(upgrade): warn when node body install.image differs from resolved target image #218

Description

Problem

Since the upgrade target image resolves from values.yaml::image (#176), the node body's machine.install.image is no longer consulted. When the two diverge — typical in projects initialized with an older preset where values.yaml was never bumped but node files were edited or re-templated — talm upgrade -f nodes/<name>.yaml prints only Using image from values.yaml: <ref> and proceeds. There is no signal that the file's image was ignored, nor that the file will be rewritten by the post-upgrade write-back to match the applied image.

This surprised a real operator: their values.yaml carried an old preset default (talos:v1.10.5) while the node file pointed at a current image; the printed line was the only hint that the wrong knob was about to win.

Proposal

When -f is given and --image is unset, after resolving the target from values.yaml, parse machine.install.image from each -f node body (best-effort, plain YAML read, no templating). If any body's image differs from the resolved target, print a warning naming both refs and stating that the body will be patched to the target after a successful upgrade. A warning, not a blocker — drift here is expected mid-upgrade.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/commandsIssues or PRs related to pkg/commands (CLI subcommands, flag parsing, root detection)area/upgradeIssues or PRs related to talm upgrade flow (image extraction, post-upgrade verification)kind/featureCategorizes issue or PR as related to a new feature

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions