Command: deployment status
The deployment status
command is used to display the status of a deployment.
The status will display the number of desired changes as well as the currently
applied changes.
Usage
nomad deployment status [options] <deployment id>
The deployment status
command requires a single argument, a deployment ID or
prefix.
A -monitor
flag can be used to update the current deployment status until completion.
When combined with -verbose
, it will also display the allocations for the given
deployment. If the deployment fails and auto_revert
is set to true
, it will monitor
the entire process, showing the failure and then monitoring the deployment of the rollback.
When ACLs are enabled, this command requires a token with the 'read-job' capability for the deployment's namespace.
General Options
-address=<addr>
: The address of the Nomad server. Overrides theNOMAD_ADDR
environment variable if set. Defaults tohttp://127.0.0.1:4646
.-region=<region>
: The region of the Nomad server to forward commands to. Overrides theNOMAD_REGION
environment variable if set. Defaults to the Agent's local region.-namespace=<namespace>
: The target namespace for queries and actions bound to a namespace. Overrides theNOMAD_NAMESPACE
environment variable if set. If set to'*'
, subcommands which support this functionality query all namespaces authorized to user. Defaults to the "default" namespace.-no-color
: Disables colored command output. Alternatively,NOMAD_CLI_NO_COLOR
may be set. This option takes precedence over-force-color
.-force-color
: Forces colored command output. This can be used in cases where the usual terminal detection fails. Alternatively,NOMAD_CLI_FORCE_COLOR
may be set. This option has no effect if-no-color
is also used.-ca-cert=<path>
: Path to a PEM encoded CA cert file to use to verify the Nomad server SSL certificate. Overrides theNOMAD_CACERT
environment variable if set.-ca-path=<path>
: Path to a directory of PEM encoded CA cert files to verify the Nomad server SSL certificate. If both-ca-cert
and-ca-path
are specified,-ca-cert
is used. Overrides theNOMAD_CAPATH
environment variable if set.-client-cert=<path>
: Path to a PEM encoded client certificate for TLS authentication to the Nomad server. Must also specify-client-key
. Overrides theNOMAD_CLIENT_CERT
environment variable if set.-client-key=<path>
: Path to an unencrypted PEM encoded private key matching the client certificate from-client-cert
. Overrides theNOMAD_CLIENT_KEY
environment variable if set.-tls-server-name=<value>
: The server name to use as the SNI host when connecting via TLS. Overrides theNOMAD_TLS_SERVER_NAME
environment variable if set.-tls-skip-verify
: Do not verify TLS certificate. This is highly not recommended. Verification will also be skipped ifNOMAD_SKIP_VERIFY
is set.-token
: The SecretID of an ACL token to use to authenticate API requests with. Overrides theNOMAD_TOKEN
environment variable if set.
Status Options
-json
: Output the deployment in its JSON format.-t
: Format and display the deployment using a Go template.-verbose
: Show full information.-monitor
: Enter monitor mode to poll for updates to the deployment status.-wait
: How long to wait before polling an update, used in conjunction with monitor mode. Defaults to 2s.
Examples
Inspect the status of a complete deployment:
$ nomad deployment status 06ca68a2ID = 06ca68a2Job ID = exampleJob Version = 0Status = successfulDescription = Deployment completed successfully DeployedTask Group Desired Placed Healthy Unhealthy Progress Deadlinecache 2 2 2 0 2021-06-09T15:20:27-07:00web 2 2 2 0 2021-06-09T15:20:27-07:00
Inspect the status of a deployment that is waiting for canary promotion:
$ nomad deployment status 0bID = 0b23b149Job ID = exampleJob Version = 1Status = runningDescription = Deployment is running but requires manual promotion DeployedTask Group Promoted Desired Canaries Placed Healthy Unhealthy Progress Deadlinecache false 2 1 1 0 0 2021-06-09T15:20:27-07:00web N/A 2 0 2 2 0 2021-06-09T15:20:27-07:00
Monitor the status of a deployment and its allocations:
$ nomad deployment status -monitor -verbose dab2021-06-09T15:10:38-07:00: Monitoring deployment "da9bfc23-576f-be32-61c9-0f9997fe70a6" ⠙ Deployment "da9bfc23-576f-be32-61c9-0f9997fe70a6" in progress... 2021-06-09T15:10:40-07:00 ID = da9bfc23-576f-be32-61c9-0f9997fe70a6 Job ID = example Job Version = 0 Status = running Description = Deployment is running Deployed Task Group Desired Placed Healthy Unhealthy Progress Deadline cache 2 2 1 0 2021-06-09T15:20:27-07:00 web 1 1 1 0 2021-06-09T15:20:27-07:00 Allocations ID Eval ID Node ID Node Name Task Group Version Desired Status Created Modified 9e1b4cb9-35c4-49f3-3ccb-1cb10a5a5aa6 e337d747-f59e-329e-4718-46edcc293695 70279742-b106-c487-315f-fb583e13178e mbp.local cache 0 run running 2021-06-09T15:10:17-07:00 2021-06-09T15:10:31-07:00 bd0a8773-0d37-bca6-6ca1-2d9c8473bdf8 e337d747-f59e-329e-4718-46edcc293695 70279742-b106-c487-315f-fb583e13178e mbp.local cache 0 run running 2021-06-09T15:10:17-07:00 2021-06-09T15:10:29-07:00 ee873095-8e76-7d4f-095f-b80ce5712d9b e337d747-f59e-329e-4718-46edcc293695 70279742-b106-c487-315f-fb583e13178e mbp.local web 0 run running 2021-06-09T15:10:17-07:00 2021-06-09T15:10:27-07:00
Monitor the status of a deployment that fails and has auto_revert
set to true
:
$ nomad deployment status -monitor e452021-06-09T15:49:19-07:00: Monitoring deployment "e45cc3c1" ! Deployment "e45cc3c1" failed 2021-06-09T15:49:48-07:00 ID = e45cc3c1 Job ID = example Job Version = 1 Status = failed Description = Failed due to progress deadline - rolling back to job version 0 Deployed Task Group Auto Revert Desired Placed Healthy Unhealthy Progress Deadline cache true 2 1 0 1 2021-06-09T15:49:48-07:00 web false 1 1 1 0 2021-06-09T15:59:28-07:00 ⠙ Deployment "e094a0be" in progress... 2021-06-09T15:50:02-07:00 ID = e094a0be Job ID = example Job Version = 2 Status = running Description = Deployment is running Deployed Task Group Auto Revert Desired Placed Healthy Unhealthy Progress Deadline cache true 2 2 1 0 2021-06-09T15:52:00-07:00 web false 1 1 1 0 2021-06-09T15:59:58-07:00
Please note: The library used for updating terminal output in place currently isn't fully Windows compatible so there may be some formatting differences (different margins, no spinner indicating deployment is in progress).