open-nomad/website/source/api/validate.html.md

2.1 KiB

layout page_title sidebar_current description
api Validate - HTTP API api-validate The /validate endpoints are used to validate object structs, fields, and types.

Validate HTTP API

The /validate endpoints are used to validate object structs, fields, and types.

Validate Job

This endpoint validates a Nomad job file. The local Nomad agent forwards the request to a server. In the event a server can't be reached the agent verifies the job file locally but skips validating driver configurations.

~> This endpoint accepts a JSON job file, not an HCL job file.

Method Path Produces
POST /v1/validate/job application/json

The table below shows this endpoint's support for blocking queries and required ACLs.

Blocking Queries ACL Required
NO namespace:read-job

Parameters

There are no parameters, but the request body contains the entire job file.

Sample Payload

(any valid nomad job IN JSON FORMAT)

Sample Request

$ curl \
    --request POST \
    --data @my-job.nomad \
    https://nomad.rocks/v1/validate/job

Sample Response

{
  "DriverConfigValidated": true,
  "ValidationErrors": [
    "Task group cache validation failed: 1 error(s) occurred:\n\n* Task redis validation failed: 1 error(s) occurred:\n\n* 1 error(s) occurred:\n\n* minimum CPU value is 20; got 1"
  ],
  "Warnings": "1 warning(s):\n\n* Group \"cache\" has warnings: 1 error(s) occurred:\n\n* Update max parallel count is greater than task group count (13 > 1). A destructive change would result in the simultaneous replacement of all allocations.",
  "Error": "1 error(s) occurred:\n\n* Task group cache validation failed: 1 error(s) occurred:\n\n* Task redis validation failed: 1 error(s) occurred:\n\n* 1 error(s) occurred:\n\n* minimum CPU value is 20; got 1"
}