Skip to content

bug: update.sh narrowed a healthy dual-stack node's provided-node-ip on every run - #653

Merged
lukepolo merged 1 commit into
mainfrom
bug/node-ip-dual-stack
Oct 17, 2026
Merged

lukepolo merged 1 commit into
mainfrom
bug/node-ip-dual-stack

Conversation

@lukepolo

Copy link
Copy Markdown
Contributor

Follow-up to #652: on a panel whose kubelet keeps provided-node-ip at the Tailscale IPv4 and IPv6, ensure_node_ip compared it to the IPv4-only config value, rewrote it on every ./update.sh (dropping the IPv6 InternalIP until the kubelet put it back) and printed a false "moved".

  • Only acts when the first address differs from the configured node-ip
  • Reads node-ip the way k3s's YAML allows: quotes, [list], trailing comment, spaces after commas
  • Waits at most 30s instead of 60s, and the warning no longer sends operators to re-run for nothing
  • Header comment corrected: the kubelet does rewrite the annotation, but only when every --node-ip (including vpn-auth's IPv6) is on a local interface
  • Tests for the dual-stack no-op, the YAML forms, the retry, and a refused annotate

…on every run, and misread quoted or commented node-ip values

A healthy kubelet keeps provided-node-ip at the Tailscale IPv4 and IPv6 both;
ensure_node_ip compared it to the IPv4-only config value, rewrote it each run
and printed a false "moved". It now only acts when the first address differs.
The node-ip value is read the way k3s's YAML allows (quotes, [list], trailing
comment, spaces), and tests cover the retry and a refused annotate.
@lukepolo
lukepolo merged commit 4b8ee88 into main Oct 17, 2026
1 check passed
@lukepolo
lukepolo deleted the bug/node-ip-dual-stack branch October 17, 2026 13:55
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