if (( $+commands[kubectl] )); then __KUBECTL_COMPLETION_FILE="${ZSH_CACHE_DIR}/kubectl_completion" if [[ ! -f $__KUBECTL_COMPLETION_FILE ]]; then kubectl completion zsh >! $__KUBECTL_COMPLETION_FILE fi [[ -f $__KUBECTL_COMPLETION_FILE ]] && source $__KUBECTL_COMPLETION_FILE unset __KUBECTL_COMPLETION_FILE fi # This command is used a LOT both below and in daily life alias k=kubectl # Apply a YML file alias kaf='kubectl apply -f' # Drop into an interactive terminal on a container alias keti='kubectl exec -ti' # Manage configuration quickly to switch contexts between local, dev ad staging. alias kcuc='kubectl config use-context' alias kcsc='kubectl config set-context' alias kcdc='kubectl config delete-context' alias kccc='kubectl config current-context' # Pod management. alias kgp='kubectl get pods' alias kep='kubectl edit pods' alias kdp='kubectl describe pods' alias kdelp='kubectl delete pods' # get pod by label: kgpl "app=myapp" -n myns alias kgpl='function _kgpl(){ label=$1; shift; kgp -l $label $*; };_kgpl' # Service management. alias kgs='kubectl get svc' alias kes='kubectl edit svc' alias kds='kubectl describe svc' alias kdels='kubectl delete svc' # Ingress management alias kgi='kubectl get ingress' alias kei='kubectl edit ingress' alias kdi='kubectl describe ingress' alias kdeli='kubectl delete ingress' # Secret management alias kgsec='kubectl get secret' alias kdsec='kubectl describe secret' alias kdelsec='kubectl delete secret' # Deployment management. alias kgd='kubectl get deployment' alias ked='kubectl edit deployment' alias kdd='kubectl describe deployment' alias kdeld='kubectl delete deployment' alias ksd='kubectl scale deployment' alias krsd='kubectl rollout status deployment' # Rollout management. alias kgrs='kubectl get rs' alias krh='kubectl rollout history' alias kru='kubectl rollout undo' # Port forwarding alias kpf="kubectl port-forward" # Tools for accessing all information alias kga='kubectl get all' alias kgaa='kubectl get all --all-namespaces' # Logs alias kl='kubectl logs' alias klf='kubectl logs -f' # File copy alias kcp='kubectl cp' # Node Management alias kgno='kubectl get nodes' alias keno='kubectl edit node' alias kdno='kubectl describe node' alias kdelno='kubectl delete node'