Awesome
THIS PLUGIN IS ARCHIVED.
Please use kubectx instead.
kubectl ns plugin
Simple Plugin to display/change the current kube namespace with support for substring matching.
Build/Installation
Build from source
go version >= 1.13 with modules support enabled is required to build the plugin from source.
export GO111MODULES=on # optional if checked out outside of $GOPATH
go build
Installation
Pre-compiled statically linked binaries are available on the releases page.
Binary must be placed anywhere in $PATH
named kubectl-ns
with execute permissions.
For further information, see the offical documentation on plugins here.
Compatibility
Known to work on Windows and Linux. Requires kubectl >= 1.12 (tested with versions >1.12). Supports the oidc, gcp and azure auth provider for authentication against the k8s api server.
Examples
For all the examples, assume your cluster has the following namespaces:
default
kube-system
kube-public
ingress-nginx
foo
bar
baz
display namespaces
Current namespace is displayed in a different color and last.
$ kubectl ns
default
kube-system
kube-public
ingress-nginx
foo
bar
baz
Substring matching can be used to display namespaces. For example if you are searching for a kube-
namespace simply type:
$ kubectl ns kube-
kube-system
kube-public
change current namespace
You can switch the namespace by providing an exact name:
$ kubectl ns foo
namespace set to "foo"
But it's also possible to switch to the ingress-nginx
namespace by typing a substring (as long as it is a unique name), for example:
$ kubectl ns ingress
namespace set to "ingress-nginx"