Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Backport release-1.26] Harden etcd subcommand usage and validation #4231

Merged
merged 2 commits into from
Apr 5, 2024

Conversation

k0s-bot
Copy link

@k0s-bot k0s-bot commented Apr 3, 2024

Automated backport to release-1.26, triggered by a label in #4217.
See #4210 #4118 k0sproject/k0smotron#459.

@k0s-bot k0s-bot requested a review from a team as a code owner April 3, 2024 09:54
@k0s-bot k0s-bot requested review from makhov and twz123 April 3, 2024 09:54
@twz123 twz123 changed the title [Backport release-1.26] [Backport release-1.27] Harden etcd subcommand usage and validation [Backport release-1.26] Harden etcd subcommand usage and validation Apr 3, 2024
@twz123 twz123 added bug Something isn't working component/etcd area/cli labels Apr 3, 2024
@twz123
Copy link
Member

twz123 commented Apr 3, 2024

This needs #4232.

This is usually the way etcdctl displays member IDs. This makes it more
intuitive and easier to correlate with etcdctl's output.

Signed-off-by: Tom Wieczorek <[email protected]>
(cherry picked from commit a8ce70b)
(cherry picked from commit dfb5bfd)
(cherry picked from commit 88d956d)
(cherry picked from commit 6684565)
The etcd leave subcommand can be used to remove k0s nodes from the etcd
cluster. If no IP address is specified, the default is to remove the
current node. The IP of the node to be removed can be specified with
the --peer-address flag. However, it's quite tempting to just pass the
IP as an argument, like this `k0s etcd drop 192.168.0.0.3`. This extra
argument will simply be ignored, and the leave subcommand will use its
defaults. This can be _very_ confusing, and also quite dangerous, as it
may remove _different_ nodes than intended.

Improve the subcommand by making it fail if arguments are passed to it.
Add validation to the --peer-address flag and improve the usage strings.
While at it, make the etcd member-list subcommand reject any args as
well.

Signed-off-by: Tom Wieczorek <[email protected]>
(cherry picked from commit 477d354)
(cherry picked from commit 6a19b5f)
(cherry picked from commit ff33c56)
(cherry picked from commit 6905070)
@twz123 twz123 force-pushed the backport-4217-to-release-1.26 branch from d48f3d5 to 457a9b0 Compare April 4, 2024 07:04
@twz123 twz123 enabled auto-merge April 4, 2024 07:53
@twz123 twz123 merged commit 8a747fc into release-1.26 Apr 5, 2024
66 checks passed
@twz123 twz123 deleted the backport-4217-to-release-1.26 branch April 5, 2024 06:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/cli bug Something isn't working component/etcd
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants