kubectl-completion

KUBERNETES(1)(kubernetes) KUBERNETES(1)(kubernetes)

Eric Paris Jan 2015

NAME

   kubectl completion - Output shell completion code for the specified shell (bash, zsh, fish, or powershell)

SYNOPSIS

   kubectl completion [OPTIONS]

DESCRIPTION

   Output  shell  completion  code for the specified shell (bash, zsh, fish, or powershell). The shell code must be evaluated to provide interactive completion of kubectl commands.  This
   can be done by sourcing it from the .bash_profile.

   Detailed instructions on how to do this are available here:

       for macOS:
       https://kubernetes.io/docs/tasks/tools/install-kubectl-macos/#enable-shell-autocompletion

       for linux:
       https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion

       for windows:
       https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/#enable-shell-autocompletion

   Note for zsh users: [1] zsh completions are only supported in versions of zsh >= 5.2.

OPTIONS INHERITED FROM PARENT COMMANDS

   --as=""      Username to impersonate for the operation. User could be a regular user or a service account in a namespace.

   --as-group=[]      Group to impersonate for the operation, this flag can be repeated to specify multiple groups.

   --as-uid=""      UID to impersonate for the operation.

   --cache-dir="/home/username/.kube/cache"      Default cache directory

   --certificate-authority=""      Path to a cert file for the certificate authority

   --client-certificate=""      Path to a client certificate file for TLS

   --client-key=""      Path to a client key file for TLS

   --cluster=""      The name of the kubeconfig cluster to use

   --context=""      The name of the kubeconfig context to use

   --disable-compression=false      If true, opt-out of response compression for all requests to the server

   --insecure-skip-tls-verify=false      If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure

   --kubeconfig=""      Path to the kubeconfig file to use for CLI requests.

   --match-server-version=false      Require server version to match client version

   -n, --namespace=""      If present, the namespace scope for this CLI request

   --password=""      Password for basic authentication to the API server

   --profile="none"      Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)

   --profile-output="profile.pprof"      Name of the file to write the profile to

   --request-timeout="0"      The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A  value
   of zero means don't timeout requests.

   -s, --server=""      The address and port of the Kubernetes API server

   --tls-server-name=""      Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used

   --token=""      Bearer token for authentication to the API server

   --user=""      The name of the kubeconfig user to use

   --username=""      Username for basic authentication to the API server

   --version=false      --version, --version=raw prints version information and quits; --version=vX.Y.Z... sets the reported version

   --warnings-as-errors=false      Treat warnings received from the server as errors and exit with a non-zero exit code

EXAMPLE

     # Installing bash completion on macOS using homebrew
     ## If running Bash 3.2 included with macOS
     brew install bash-completion
     ## or, if running Bash 4.1+
     brew install bash-completion@2
     ## If kubectl is installed via homebrew, this should start working immediately
     ## If you've installed via other means, you may need add the completion to your completion directory
     kubectl completion bash > $(brew --prefix)/etc/bash_completion.d/kubectl

     # Installing bash completion on Linux
     ## If bash-completion is not installed on Linux, install the 'bash-completion' package
     ## via your distribution's package manager.
     ## Load the kubectl completion code for bash into the current shell
     source <(kubectl completion bash)
     ## Write bash completion code to a file and source it from .bash_profile
     kubectl completion bash > ~/.kube/completion.bash.inc
     printf "
     # kubectl shell completion
     source '$HOME/.kube/completion.bash.inc'
     " >> $HOME/.bash_profile
     source $HOME/.bash_profile

     # Load the kubectl completion code for zsh[1] into the current shell
     source <(kubectl completion zsh)
     # Set the kubectl completion code for zsh[1] to autoload on startup
     kubectl completion zsh > "${fpath[1]}/_kubectl"

     # Load the kubectl completion code for fish[2] into the current shell
     kubectl completion fish | source
     # To load completions for each session, execute once:
     kubectl completion fish > ~/.config/fish/completions/kubectl.fish

     # Load the kubectl completion code for powershell into the current shell
     kubectl completion powershell | Out-String | Invoke-Expression
     # Set kubectl completion code for powershell to run on startup
     ## Save completion code to a script and execute in the profile
     kubectl completion powershell > $HOME\.kube\completion.ps1
     Add-Content $PROFILE "$HOME\.kube\completion.ps1"
     ## Execute completion code in the profile
     Add-Content $PROFILE "if (Get-Command kubectl -ErrorAction SilentlyContinue) {
     kubectl completion powershell | Out-String | Invoke-Expression
     }"
     ## Add completion code directly to the $PROFILE script
     kubectl completion powershell >> $PROFILE

SEE ALSO

   kubectl(1),

HISTORY

   January 2015, Originally compiled by Eric Paris (eparis at redhat dot com) based on the kubernetes source material, but hopefully they have been automatically generated since!

Manuals User KUBERNETES(1)(kubernetes)