diff options
author | Adam Henley <71472057+ajh-sr@users.noreply.github.com> | 2023-10-10 07:28:09 +1300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-09 20:28:09 +0200 |
commit | 38db3e16ef3266800e1a9516c0615ff04ec97cb6 (patch) | |
tree | a3af9e6ae88a92ef5956dbc85a7405ebd74ffccb | |
parent | 24b2600558f999dd53f0d354ad61fc07cf7d6e2b (diff) | |
download | zsh-38db3e16ef3266800e1a9516c0615ff04ec97cb6.tar.gz zsh-38db3e16ef3266800e1a9516c0615ff04ec97cb6.tar.bz2 zsh-38db3e16ef3266800e1a9516c0615ff04ec97cb6.zip |
feat(kind): add plugin for Kind k8s tool (#9827)
Co-authored-by: jxlwqq <jxlwqq@gmail.com>
Co-authored-by: Francesco Ilario <fr.ilario@gmail.com>
Co-authored-by: Marc Cornellà <hello@mcornella.com>
-rw-r--r-- | plugins/kind/README.md | 22 | ||||
-rw-r--r-- | plugins/kind/kind.plugin.zsh | 23 |
2 files changed, 45 insertions, 0 deletions
diff --git a/plugins/kind/README.md b/plugins/kind/README.md new file mode 100644 index 000000000..49024648d --- /dev/null +++ b/plugins/kind/README.md @@ -0,0 +1,22 @@ +# Kind plugin + +This plugin adds completion for the [Kind](https://kind.sigs.k8s.io/) tool, as well +as a few aliases for easier use. + +To use it, add `kind` to the plugins array in your zshrc file: + +```zsh +plugins=(... kind) +``` + +## Aliases + +| Alias | Command | +| ------- | ---------------------------- | +| `kicc` | `kind create cluster` | +| `kiccn` | `kind create cluster --name` | +| `kigc` | `kind get clusters` | +| `kidc` | `kind delete cluster` | +| `kidcn` | `kind delete cluster --name` | +| `kidca` | `kind delete clusters -A` | +| `kigk` | `kind get kubeconfig` | diff --git a/plugins/kind/kind.plugin.zsh b/plugins/kind/kind.plugin.zsh new file mode 100644 index 000000000..183eb7bd6 --- /dev/null +++ b/plugins/kind/kind.plugin.zsh @@ -0,0 +1,23 @@ +if (( ! $+commands[kind] )); then + return +fi + +# If the completion file doesn't exist yet, we need to autoload it and +# bind it to `kind`. Otherwise, compinit will have already done that. +if [[ ! -f "$ZSH_CACHE_DIR/completions/_kind" ]]; then + typeset -g -A _comps + autoload -Uz _kind + _comps[kind]=_kind +fi + +# Generate and load kind completion +kind completion zsh >! "$ZSH_CACHE_DIR/completions/_kind" &| + +# Register aliases +alias kicc="kind create cluster" +alias kiccn="kind create cluster --name" +alias kigc="kind get clusters" +alias kidc="kind delete cluster" +alias kidcn="kind delete cluster --name" +alias kidca="kind delete clusters -A" +alias kigk="kind get kubeconfig" |