2015-11-05 15:47:08 +01:00
|
|
|
---
|
|
|
|
layout: "docs"
|
|
|
|
page_title: "Command: validate"
|
|
|
|
sidebar_current: "docs-commands-validate"
|
|
|
|
description: |-
|
2016-02-08 13:36:10 +01:00
|
|
|
The `terraform validate` command is used to validate the syntax of the terraform files.
|
2015-11-05 15:47:08 +01:00
|
|
|
---
|
|
|
|
|
2016-02-08 13:36:10 +01:00
|
|
|
# Command: validate
|
2015-11-05 15:47:08 +01:00
|
|
|
|
|
|
|
The `terraform validate` command is used to validate the syntax of the terraform files.
|
2016-02-08 13:36:10 +01:00
|
|
|
Terraform performs a syntax check on all the terraform files in the directory,
|
|
|
|
and will display an error if any of the files doesn't validate.
|
2015-11-05 15:47:08 +01:00
|
|
|
|
2016-02-08 13:36:10 +01:00
|
|
|
This command **does not** check formatting (e.g. tabs vs spaces, newlines, comments etc.).
|
2015-11-05 15:47:08 +01:00
|
|
|
|
2016-02-08 13:36:10 +01:00
|
|
|
The following can be reported:
|
2015-11-05 15:47:08 +01:00
|
|
|
|
2016-02-08 13:36:10 +01:00
|
|
|
* invalid [HCL](https://github.com/hashicorp/hcl) syntax (e.g. missing trailing quote or equal sign)
|
|
|
|
* invalid HCL references (e.g. variable name or attribute which doesn't exist)
|
|
|
|
* same `provider` declared multiple times
|
|
|
|
* same `module` declared multiple times
|
|
|
|
* same `resource` declared multiple times
|
|
|
|
* invalid `module` name
|
|
|
|
* interpolation used in places where it's unsupported
|
|
|
|
(e.g. `variable`, `depends_on`, `module.source`, `provider`)
|
2015-11-05 15:47:08 +01:00
|
|
|
|
|
|
|
## Usage
|
|
|
|
|
|
|
|
Usage: `terraform validate [dir]`
|
|
|
|
|
|
|
|
By default, `validate` requires no flags and looks in the current directory
|
|
|
|
for the configurations.
|