Nomad
Command: job revert
The job revert command is used to revert a job to a prior version of the
job. The available versions to revert to can be found using job history
command.
The revert command will use a Consul token with the following preference:
first the -consul-token flag, then the $CONSUL_HTTP_TOKEN environment variable.
Because the consul token used to run the targeted job version was not
persisted, it must be provided to revert if the targeted job version includes
Consul Connect enabled services and the Nomad servers were configured to require
consul service identity authentication.
The revert command will use a Vault token with the following preference:
first the -vault-token flag, then the $VAULT_TOKEN environment variable.
Because the vault token used to run the targeted job version was not
persisted, it must be provided to revert if the targeted job version includes
Vault policies and the Nomad servers were configured to require vault policy
authentication.
Usage
nomad job revert [options] <job> <version>
The job revert command requires two inputs, the job ID and the version of that
job to revert to.
When ACLs are enabled, this command requires a token with the submit-job
and list-jobs capabilities for the job's namespace.
General Options
- -address=<addr>: The address of the Nomad server. Overrides the- NOMAD_ADDRenvironment variable if set. Defaults to- http://127.0.0.1:4646.
- -region=<region>: The region of the Nomad server to forward commands to. Overrides the- NOMAD_REGIONenvironment variable if set. Defaults to the Agent's local region.
- -namespace=<namespace>: The target namespace for queries and actions bound to a namespace. Overrides the- NOMAD_NAMESPACEenvironment variable if set. If set to- '*', job and alloc subcommands query all namespaces authorized to user. Defaults to the "default" namespace.
- -no-color: Disables colored command output. Alternatively,- NOMAD_CLI_NO_COLORmay be set.
- -ca-cert=<path>: Path to a PEM encoded CA cert file to use to verify the Nomad server SSL certificate. Overrides the- NOMAD_CACERTenvironment 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-certand- -ca-pathare specified,- -ca-certis used. Overrides the- NOMAD_CAPATHenvironment 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 the- NOMAD_CLIENT_CERTenvironment variable if set.
- -client-key=<path>: Path to an unencrypted PEM encoded private key matching the client certificate from- -client-cert. Overrides the- NOMAD_CLIENT_KEYenvironment variable if set.
- -tls-server-name=<value>: The server name to use as the SNI host when connecting via TLS. Overrides the- NOMAD_TLS_SERVER_NAMEenvironment variable if set.
- -tls-skip-verify: Do not verify TLS certificate. This is highly not recommended. Verification will also be skipped if- NOMAD_SKIP_VERIFYis set.
- -token: The SecretID of an ACL token to use to authenticate API requests with. Overrides the- NOMAD_TOKENenvironment variable if set.
Revert Options
- -detach: Return immediately instead of monitoring. A new evaluation ID will be output, which can be used to examine the evaluation using the eval status command.
- -consul-token: If set, the passed Consul token is sent along with the revert request to the Nomad servers. This overrides the token found in the- $CONSUL_HTTP_TOKENenvironment variable.
- -vault-token: If set, the passed Vault token is sent along with the revert request to the Nomad servers. This overrides the token found in the- $VAULT_TOKENenvironment variable.
- -verbose: Show full information.
Examples
Revert to an older version of a job:
$ nomad job history -p example
Version     = 1
Stable      = false
Submit Date = 07/25/17 21:27:30 UTC
Diff        =
+/- Job: "example"
+/- Task Group: "cache"
  +/- Task: "redis"
    +/- Config {
      +/- image:           "redis:3.2" => "redis:4.0"
          port_map[0][db]: "6379"
        }
Version     = 0
Stable      = false
Submit Date = 07/25/17 21:27:18 UTC
$ nomad job revert example 0
==> Monitoring evaluation "faff5c30"
    Evaluation triggered by job "example"
    Evaluation within deployment: "e17c8592"
    Allocation "4ed0ca3b" modified: node "e8a2243d", group "cache"
    Evaluation status changed: "pending" -> "complete"
==> Evaluation "faff5c30" finished with status "complete"
$ nomad job history -p example
Version     = 2
Stable      = true
Submit Date = 07/25/17 21:27:43 UTC
Diff        =
+/- Job: "example"
+/- Task Group: "cache"
  +/- Task: "redis"
    +/- Config {
      +/- image:           "redis:4.0" => "redis:3.2"
          port_map[0][db]: "6379"
        }
Version     = 1
Stable      = false
Submit Date = 07/25/17 21:27:30 UTC
Diff        =
+/- Job: "example"
+/- Task Group: "cache"
  +/- Task: "redis"
    +/- Config {
      +/- image:           "redis:3.2" => "redis:4.0"
          port_map[0][db]: "6379"
        }
Version     = 0
Stable      = false
Submit Date = 07/25/17 21:27:18 UTC