ef88795af3
Co-authored-by: James Rasell <jrasell@hashicorp.com>
77 lines
2.1 KiB
Plaintext
77 lines
2.1 KiB
Plaintext
---
|
|
layout: docs
|
|
page_title: 'Commands: job validate'
|
|
description: >
|
|
The job validate command is used to check a job specification for syntax
|
|
errors and validation problems.
|
|
---
|
|
|
|
# Command: job validate
|
|
|
|
**Alias: `nomad validate`**
|
|
|
|
The `job validate` command is used to check an HCL [job specification] for any
|
|
syntax errors or validation problems.
|
|
|
|
## Usage
|
|
|
|
```plaintext
|
|
nomad job validate <file>
|
|
```
|
|
|
|
The `job validate` command requires a single argument, specifying the path to a
|
|
file containing an HCL [job specification]. This file will be read and the job
|
|
checked for any problems. If the supplied path is "-", the job file is read from
|
|
STDIN. Otherwise it is read from the file at the supplied path or downloaded and
|
|
read from URL specified. Nomad downloads the job file using [`go-getter`] and
|
|
supports `go-getter` syntax.
|
|
|
|
On successful validation, exit code 0 will be returned, otherwise an exit code
|
|
of 1 indicates an error.
|
|
|
|
When ACLs are enabled, this command requires a token with the `read-job`
|
|
capability for the job's namespace.
|
|
|
|
## Validate Options
|
|
|
|
- `-hcl1`: If set, HCL1 parser is used for parsing the job spec.
|
|
|
|
- `-hcl2-strict`: Whether an error should be produced from the HCL2 parser where
|
|
a variable has been supplied which is not defined within the root variables.
|
|
Defaults to true.
|
|
|
|
- `-var=<key=value>`: Variable for template, can be used multiple times.
|
|
|
|
- `-var-file=<path>`: Path to HCL2 file containing user variables.
|
|
|
|
## Examples
|
|
|
|
Validate a job with invalid syntax:
|
|
|
|
```shell-session
|
|
$ nomad job validate example.nomad
|
|
Job validation errors:
|
|
1 error(s) occurred:
|
|
|
|
* group "cache" -> task "redis" -> config: 1 error(s) occurred:
|
|
|
|
* field "image" is required
|
|
```
|
|
|
|
Validate a job that has a configuration that causes warnings:
|
|
|
|
```shell-session
|
|
$ nomad job validate example.nomad
|
|
Job Warnings:
|
|
1 warning(s):
|
|
|
|
* Group "cache" has warnings: 1 error(s) occurred:
|
|
|
|
* Update max parallel count is greater than task group count (6 > 3). A destructive change would result in the simultaneous replacement of all allocations.
|
|
|
|
Job validation successful
|
|
```
|
|
|
|
[`go-getter`]: https://github.com/hashicorp/go-getter
|
|
[job specification]: /docs/job-specification
|