open-nomad/website/content/docs/commands/job/validate.mdx

65 lines
1.7 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.
## 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