mirror of
https://github.com/kemko/nomad.git
synced 2026-01-07 02:45:42 +03:00
* sectionless files plus acl section * alloc section * config, deployment sections * job section * licence, namespace * node, node-pool * operator * plugin, quota, recommendation * scaling, sentinel, server, service, system, var, volume * Add "ENT" label to left nav for enterprise commands * job tag break into separate folder and files; update options header
83 lines
2.4 KiB
Plaintext
83 lines
2.4 KiB
Plaintext
---
|
|
layout: docs
|
|
page_title: 'nomad job validate command reference'
|
|
description: >
|
|
The `nomad job validate` command checks a job specification for syntax
|
|
errors and validation problems.
|
|
---
|
|
|
|
# `nomad job validate` command reference
|
|
|
|
**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.
|
|
|
|
## Options
|
|
|
|
- `-json`: Parses the job file as JSON. If the outer object has a Job field,
|
|
such as from "nomad job inspect" or "nomad run -output", the value of the
|
|
field is used as the job.
|
|
|
|
- `-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.
|
|
|
|
- `-vault-namespace`: If set, the passed Vault namespace is stored in the job
|
|
before sending to the Nomad servers.
|
|
|
|
- `-var=<key=value>`: Variable for template, can be used multiple times.
|
|
|
|
- `-var-file=<path>`: Path to HCL2 file containing user variables.
|
|
|
|
## Examples
|
|
|
|
Validate a JSON job with invalid syntax:
|
|
|
|
```shell-session
|
|
$ nomad job validate -json example.json
|
|
Job validation errors:
|
|
1 error occurred:
|
|
* Missing job datacenters
|
|
```
|
|
|
|
Validate a job that has a configuration that causes warnings:
|
|
|
|
```shell-session
|
|
$ nomad job validate example.nomad.hcl
|
|
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
|
|
```
|
|
|
|
## General options
|
|
|
|
@include 'general_options.mdx'
|
|
|
|
[`go-getter`]: https://github.com/hashicorp/go-getter
|
|
[job specification]: /nomad/docs/job-specification
|