diff --git a/website/docs/configuration/environment-variables.html.md b/website/docs/commands/environment-variables.html.md similarity index 86% rename from website/docs/configuration/environment-variables.html.md rename to website/docs/commands/environment-variables.html.md index 5df5deb0e..e53428806 100644 --- a/website/docs/configuration/environment-variables.html.md +++ b/website/docs/commands/environment-variables.html.md @@ -1,13 +1,19 @@ --- layout: "docs" page_title: "Environment Variables" -sidebar_current: "docs-config-environment-variables" +sidebar_current: "docs-commands-environment-variables" description: |- - Terraform uses different environment variables that can be used to configure various aspects of how Terraform behaves. this section documents those variables, their potential values, and how to use them. + Terraform uses environment variables to configure various aspects of its behavior. --- # Environment Variables +Terraform refers to a number of environment variables to customize various +aspects of its behavior. None of these environment variables are required +when using Terraform, but they can be used to change some of Terraform's +default behaviors in unusual situations, or to increase output verbosity +for debugging. + ## TF_LOG If set to any value, enables detailed logs to appear on stderr which is useful for debugging. For example: @@ -104,15 +110,3 @@ The data directory is used to retain data that must persist from one command to the next, so it's important to have this variable set consistently throughout all of the Terraform workflow commands (starting with `terraform init`) or else Terraform may be unable to find providers, modules, and other artifacts. - -## TF_SKIP_REMOTE_TESTS - -This can be set prior to running the unit tests to opt-out of any tests -requiring remote network connectivity. The unit tests make an attempt to -automatically detect when connectivity is unavailable and skip the relevant -tests, but by setting this variable you can force these tests to be skipped. - -```shell -export TF_SKIP_REMOTE_TESTS=1 -make test -``` diff --git a/website/docs/configuration/load.html.md b/website/docs/configuration/load.html.md deleted file mode 100644 index 101ac3fec..000000000 --- a/website/docs/configuration/load.html.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -layout: "docs" -page_title: "Load Order and Semantics" -sidebar_current: "docs-config-load" -description: |- - When invoking any command that loads the Terraform configuration, Terraform loads all configuration files within the directory specified in alphabetical order. ---- - -# Load Order and Semantics - -When invoking any command that loads the Terraform configuration, -Terraform loads all configuration files within the directory -specified in alphabetical order. - -The files loaded must end in -either `.tf` or `.tf.json` to specify the format that is in use. -Otherwise, the files are ignored. Multiple file formats can -be present in the same directory; it is okay to have one Terraform -configuration file be Terraform syntax and another be JSON. - -[Override](/docs/configuration/override.html) -files are the exception, as they're loaded after all non-override -files, in alphabetical order. - -The configuration within the loaded files are appended to each -other. This is in contrast to being merged. This means that two -resources with the same name are not merged, and will instead -cause a validation error. This is in contrast to -[overrides](/docs/configuration/override.html), -which do merge. - -The order of variables, resources, etc. defined within the -configuration doesn't matter. Terraform configurations are -[declarative](https://en.wikipedia.org/wiki/Declarative_programming), -so references to other resources and variables do not depend -on the order they're defined. diff --git a/website/docs/configuration/terraform-enterprise.html.md b/website/docs/configuration/terraform-enterprise.html.md index 9184d76c2..f8a065933 100644 --- a/website/docs/configuration/terraform-enterprise.html.md +++ b/website/docs/configuration/terraform-enterprise.html.md @@ -8,53 +8,21 @@ description: |- # Terraform Push Configuration -~> **Important:** The `terraform push` command is deprecated, and only works with [the legacy version of Terraform Enterprise](/docs/enterprise-legacy/index.html). In the current version of Terraform Enterprise, you can upload configurations using the API. See [the docs about API-driven runs](/docs/enterprise/run/api.html) for more details. +Prior to v0.12, Terraform included mechanisms to interact with a legacy version +of Terraform Enterprise, formerly known as "Atlas". -The [`terraform push` command](/docs/commands/push.html) uploads a configuration to a Terraform Enterprise (legacy) environment. The name of the environment (and the organization it's in) can be specified on the command line, or as part of the Terraform configuration in an `atlas` block. - -The `atlas` block does not configure remote state; it only configures the push command. For remote state, [use a `terraform { backend "" {...} }` block](/docs/backends/config.html). - -This page assumes you're familiar with the -[configuration syntax](/docs/configuration/syntax.html) -already. - -## Example - -Terraform push configuration looks like the following: +These features relied on a special configuration block named `atlas`: ```hcl atlas { - name = "mitchellh/production-example" + name = "acme-corp/production" } ``` -~> **Why is this called "atlas"?** Atlas was previously a commercial offering -from HashiCorp that included a full suite of enterprise products. The products -have since been broken apart into their individual products, like **Terraform -Enterprise**. While this transition is in progress, you may see references to -"atlas" in the documentation. We apologize for the inconvenience. +These features are no longer available on Terraform Enterprise and so the +corresponding configuration elements and commands have been removed in +Terraform v0.12. -## Description - -The `atlas` block configures the settings when Terraform is -[pushed](/docs/commands/push.html) to Terraform Enterprise. Only one `atlas` block -is allowed. - -Within the block (the `{ }`) is configuration for Atlas uploading. -No keys are required, but the key typically set is `name`. - -**No value within the `atlas` block can use interpolations.** Due -to the nature of this configuration, interpolations are not possible. -If you want to parameterize these settings, use the Atlas block to -set defaults, then use the command-line flags of the -[push command](/docs/commands/push.html) to override. - -## Syntax - -The full syntax is: - -```text -atlas { - name = VALUE -} -``` +To migrate to the current version of Terraform Enterprise, refer to +[the upgrade guide](/docs/enterprise/upgrade/index.html). After upgrading, +any `atlas` blocks in your configuration can be safely removed. diff --git a/website/layouts/docs.erb b/website/layouts/docs.erb index 7b55511cd..6452e293f 100644 --- a/website/layouts/docs.erb +++ b/website/layouts/docs.erb @@ -4,40 +4,20 @@ > Configuration @@ -152,6 +144,10 @@ > CLI Config File + + > + Environment Variables +