123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- #compdef nomad
- local -a _nomad_cmds
- _nomad_cmds=(
- 'agent:Runs a Nomad agent'
- 'agent-info:Display status information about the local agent'
- 'alloc-status:Display allocation status information and metadata'
- 'client-config:View or modify client configuration details'
- 'eval-status:Display evaluation status and placement failure reasons'
- 'fs:Inspect the contents of an allocation directory'
- 'init:Create an example job file'
- 'inspect:Inspect a submitted job'
- 'logs:Streams the logs of a task.'
- 'node-drain:Toggle drain mode on a given node'
- 'node-status:Display status information about nodes'
- 'plan:Dry-run a job update to determine its effects'
- 'run:Run a new job or update an existing'
- 'server-force-leave:Force a server into the left state'
- 'server-join:Join server nodes together'
- 'server-members:Display a list of known servers and their'
- 'status:Display status information about jobs'
- 'stop:Stop a running job'
- 'validate:Checks if a given job specification is valid'
- 'version:Prints the Nomad version'
- )
- __allocstatus() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-short[Display short output. Shows only the most recent task event.]' \
- '-stats[Display detailed resource usage statistics.]' \
- '-verbose[Show full information.]' \
- '-json[Output the allocation in its JSON format.]' \
- '-t[Format and display allocation using a Go template.]'
- }
- __evalstatus() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-monitor[Monitor an outstanding evaluation.]' \
- '-verbose[Show full information.]' \
- '-json[Output the allocation in its JSON format.]' \
- '-t[Format and display allocation using a Go template.]'
- }
- __inspect() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-json[Output the allocation in its JSON format.]' \
- '-t[Format and display allocation using a Go template.]'
- }
- __logs() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-stderr[ Display stderr logs.]' \
- '-job[<job-id> Use a random allocation from the specified job ID.]' \
- '-verbose[Show full information.]' \
- '-f[Causes the output to not stop when the end of the logs are reached, but rather to wait for additional output.]' \
- '-tail[Show the logs contents with offsets relative to the end of the logs. If no offset is given, -n is defaulted to 10.]' \
- '-n[Sets the tail location in best-efforted number of lines relative to the end of the logs.]' \
- '-c[Sets the tail location in number of bytes relative to the end of the logs.]'
- }
- __nodestatus() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-self[Query the status of the local node.]' \
- '-allocs[ Display a count of running allocations for each node.]' \
- '-short[Display short output. Shows only the most recent task event.]' \
- '-stats[Display detailed resource usage statistics.]' \
- '-verbose[Show full information.]' \
- '-json[Output the allocation in its JSON format.]' \
- '-t[Format and display allocation using a Go template.]'
- }
- __plan() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-diff[Determines whether the diff between the remote job and planned job is shown. Defaults to true.]'
- }
- __run() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-check-index[If set, the job is only registered or updated if the passed job modify index matches the server side version. If a check-index value of zero is passed, the job is only registered if it does not yet exist. If a non-zero value is passed, it ensures that the job is being updated from a known state. The use of this flag is most common in conjunction with plan command.]' \
- '-detach[Return immediately instead of entering monitor mode. After job submission, the evaluation ID will be printed to the screen, which can be used to examine the evaluation using the eval-status command.]' \
- '-output[Output the JSON that would be submitted to the HTTP API without submitting the job.]' \
- '-verbose[Show full information.]'
- }
- __status() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-short[Display short output. Shows only the most recent task event.]' \
- '-evals[Display the evaluations associated with the job.]' \
- '-verbose[Show full information.]'
- }
- __stop() {
- _arguments \
- '-address=[(addr) The address of the Nomad server. Overrides the NOMAD_ADDR environment variable if set. Default = http://127.0.0.1:4646]' \
- '-region=[(region) The region of the Nomad servers to forward commands to. Overrides the NOMAD_REGION environment variable if set. Defaults to the Agent s local region.]' \
- '-no-color[Disables colored command output.]' \
- '-detach[Return immediately instead of entering monitor mode. After the deregister command is submitted, a new evaluation ID is printed to the screen, which can be used to examine the evaluation using the eval-status command.]' \
- '-yes[Automatic yes to prompts.]' \
- '-verbose[Show full information.]'
- }
- _arguments '*:: :->command'
- if (( CURRENT == 1 )); then
- _describe -t commands "nomad command" _nomad_cmds
- return
- fi
- local -a _command_args
- case "$words[1]" in
- alloc-status)
- __allocstatus ;;
- eval-status)
- __evalstatus ;;
- inspect)
- __inspect ;;
- logs)
- __logs ;;
- node-status)
- __nodestatus ;;
- plan)
- __plan ;;
- run)
- __run ;;
- status)
- __status ;;
- stop)
- __stop ;;
- esac
|