github.com/hugorut/terraform@v1.1.3/website/docs/language/configuration-0-11/load.mdx (about) 1 --- 2 page_title: Load Order and Semantics - 0.11 Configuration Language 3 description: >- 4 When invoking any command that loads the Terraform configuration, Terraform 5 loads all configuration files within the directory specified in alphabetical 6 order. 7 --- 8 9 # Load Order and Semantics 10 11 -> **Note:** This page is about Terraform 0.11 and earlier. For Terraform 0.12 12 and later, see 13 [Configuration Language](/language). 14 15 When invoking any command that loads the Terraform configuration, 16 Terraform loads all configuration files within the directory 17 specified in alphabetical order. 18 19 The files loaded must end in 20 either `.tf` or `.tf.json` to specify the format that is in use. 21 Otherwise, the files are ignored. Multiple file formats can 22 be present in the same directory; it is okay to have one Terraform 23 configuration file be Terraform syntax and another be JSON. 24 25 [Override](/language/configuration-0-11/override) 26 files are the exception, as they're loaded after all non-override 27 files, in alphabetical order. 28 29 The configuration within the loaded files are appended to each 30 other. This is in contrast to being merged. This means that two 31 resources with the same name are not merged, and will instead 32 cause a validation error. This is in contrast to 33 [overrides](/language/configuration-0-11/override), 34 which do merge. 35 36 The order of variables, resources, etc. defined within the 37 configuration doesn't matter. Terraform configurations are 38 [declarative](https://en.wikipedia.org/wiki/Declarative_programming), 39 so references to other resources and variables do not depend 40 on the order they're defined.