keisku / kubectl-explore

A better kubectl explain with the fuzzy finder
MIT License
356 stars 12 forks source link
golang kubectl kubectl-command kubectl-plugin kubectl-plugins kubernetes

kubectl-explore

.github/workflows/test.yaml

demo

What’s lacking in the original kubectl-explain?

Example Usage

# Fuzzy-find a resource, then a field to explain
kubectl explore

# Fuzzy-find from all fields of a specific resource.
kubectl explore pod
kubectl explore sts

# Fuzzy-find from fields that a given regex matches.
kubectl explore sts.*Account

Installation

Krew

Use krew plugin manager to install. See the guide to install krew.

kubectl krew install explore
kubectl explore --help

Nix

The plugin is available in nixpkgs:

nix-env -iA nixpkgs.kubectl-explore

Arch

use yay or paru to install the package from the AUR.

kubectl-explore-bin

[yay/paru] -S kubectl-explore-bin

Download the binary

Download the binary from GitHub Releases and drop it in your $PATH.

# Other available architectures are linux_arm64, darwin_amd64, darwin_arm64, windows_amd64.
export ARCH=linux_amd64
# Check the latest version, https://github.com/keisku/kubectl-explore/releases/latest
export VERSION=<LATEST_VERSION>
wget -O- "https://github.com/keisku/kubectl-explore/releases/download/${VERSION}/kubectl-explore_${VERSION}_${ARCH}.tar.gz" | sudo tar -xzf - -C /usr/local/bin && sudo chmod +x /usr/local/bin/kubectl-explore

From source.

go install github.com/keisku/kubectl-explore@latest
sudo mv $GOPATH/bin/kubectl-explore /usr/local/bin

Validate if kubectl explore can be executed. The Kubernetes documentation explains how to use a plugin.

kubectl explore --help