OC(1)
π
OC(1): oc completion π
okay bestie, welcome to the OpenShift CLI User Manuals page for oc completion β yes that's the manual name, yes it's giving "official documentation but make it cute" π this one's from June 2016 and we're gonna get through it together, no cap.
β¨ NAME β¨
oc completion β spit out shell completion code for whichever shell you name: bash, zsh, fish, or powershell. literally that's the whole job π«Ά
πΈ SYNOPSIS πΈ
oc completion [OPTIONS]
π¦ DESCRIPTION π¦
so the whole point: this dumps shell completion code for the shell you picked (bash or zsh). but here's the thing β the code doesn't do anything until the shell actually evaluates it, and that's what gives you the interactive completion for oc commands β¨ one way to make that happen is sourcing it from your .bash_profile.
π§ note for zsh girlies: [1] zsh completions are only supported in versions of zsh >= 5.2. if you're on something older, this is not the vibe, sorry π
π OPTIONS INHERITED FROM PARENT COMMANDS π
these aren't even oc completion's own flags, they're inherited from the parent command β but they're all here, every single one, because we don't skip π
--as=""β username to impersonate for the operation. 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.--as-user-extra=[]β user extras to impersonate for the operation. this flag can be repeated to specify multiple values for the same key.--cache-dir="/homeless-shelter/.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β iftrue, opt out of response compression for all requests to the server.--insecure-skip-tls-verify=falseβ iftrue, the server's certificate won't be checked for validity.
π careful babes: this will make your HTTPS connections insecure. like, actually insecure. not a cute look for prod.
--kubeconfig=""β path to the kubeconfig file to use for CLI requests.--kuberc=""β path to the kuberc file to use for preferences. this can be disabled by exportingKUBECTL_KUBERC=falsefeature gate or turning off the featureKUBERC=off.--match-server-version=falseβ require server version to match client version.-n,--namespace=""β if present, the namespace scope for this CLI request.--profile="none"β name of profile to capture. one of(none|cpu|heap|goroutine|threadcreate|block|mutex)β pick your fighter π₯--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's 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.--warnings-as-errors=falseβ treat warnings received from the server as errors and exit with a non-zero exit code. highkey dramatic but okay π₯
π EXAMPLE π
this is the part where the manpage just hands you the whole recipe book, and honestly? iconic. all the commands below are exactly as written, so copy with confidence π
# 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 oc 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
oc completion bash > $(brew --prefix)/etc/bash_completion.d/oc
# 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 oc completion code for bash into the current shell
source <(oc completion bash)
## Write bash completion code to a file and source it from .bash_profile
oc completion bash > /.kube/completion.bash.inc
printf "
# oc shell completion
source '$HOME/.kube/completion.bash.inc'
" >> $HOME/.bash_profile
source $HOME/.bash_profile
# Load the oc completion code for zsh[1] into the current shell
source <(oc completion zsh)
# Set the oc completion code for zsh[1] to autoload on startup
oc completion zsh > "${fpath[1]}/_oc"
# Load the oc completion code for fish[2] into the current shell
oc completion fish | source
# To load completions for each session, execute once:
oc completion fish > /.config/fish/completions/oc.fish
# Load the oc completion code for powershell into the current shell
oc completion powershell | Out-String | Invoke-Expression
# Set oc completion code for powershell to run on startup
## Save completion code to a script and execute in the profile
oc 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 oc -ErrorAction SilentlyContinue) {
oc completion powershell | Out-String | Invoke-Expression
}"
## Add completion code directly to the $PROFILE script
oc completion powershell >> $PROFILE
π SEE ALSO π
oc(1), β yes with the lil trailing comma, we keep the details bestie π
β HISTORY β
June 2016 β ported from the Kubernetes man-doc generator. vintage! π
and that's the page!! slay, you now know everything about oc completion π¦ this gem comes to you from Openshift β the Openshift CLI User Manuals, dated June 2016 β mwah, go complete some shells π
β¨
π¦ where this page comes from
- nixpkgs unstable: openshift 4.22.0-202605222050
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms