Merge pull request #29117 from hashicorp/description-metadata-language-docs

Description metadata -  language docs
This commit is contained in:
Laura Pacilio 2021-07-21 16:30:05 -04:00 committed by GitHub
commit b9c0cbb1fd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
48 changed files with 58 additions and 65 deletions

View File

@ -2,13 +2,12 @@
layout: "language"
page_title: "Data Sources - Configuration Language"
sidebar_current: "docs-config-data-sources"
description: |-
Data sources allow data to be fetched or computed for use elsewhere in Terraform configuration.
description: "Data sources allow Terraform to use external data, function output, and data from other configurations. Learn data resource arguments, behavior, and lifecycle."
---
# Data Sources
_Data sources_ allow Terraform use information defined outside of Terraform,
_Data sources_ allow Terraform to use information defined outside of Terraform,
defined by another separate Terraform configuration, or modified by functions.
> **Hands-on:** Try the [Query Data Sources](https://learn.hashicorp.com/tutorials/terraform/data-sources) tutorial on HashiCorp Learn.

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Dependency Lock File (.terraform.lock.hcl) - Configuration Language"
description: "Terraform uses the dependency lock file `.teraform.lock.hcl` to track and select provider versions. Learn about dependency installation and lock file changes."
---
# Dependency Lock File

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Conditional Expressions - Configuration Language"
description: "Conditional expressions select one of two values. You can use them to define defaults to replace invalid values."
---
# Conditional Expressions

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Dynamic Blocks - Configuration Language"
description: "`dynamic` blocks automatically construct multi-level, nested block structures. Learn to configure `dynamic` blocks and understand their behavior."
---

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "For Expressions - Configuration Language"
description: "`for` expressions transform complex input values into complex output values. Learn how to filter inputs and how to group results."
---
# `for` Expressions

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Function Calls - Configuration Language"
description: "Functions transform and combine values. Learn about Terraform's built-in functions."
---
# Function Calls

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Expressions - Configuration Language"
description: "An overview of expressions to reference or compute values in Terraform configurations, including types, operators, and functions."
---
# Expressions

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Operators - Configuration Language"
description: "Operators transform or combine expressions. Learn about arithmetic, logical, equality, and comparison operators."
---
# Arithmetic and Logical Operators

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "References to Values - Configuration Language"
description: "Reference values in configurations, including resources, input variables, local and block-local values, module outputs, data sources, and workspace data."
---
# References to Named Values

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Splat Expressions - Configuration Language"
description: "Splat expressions concisely represent common operations. In Terraform, they also transform single, non-null values into a single-element tuple."
---
# Splat Expressions
@ -61,9 +62,7 @@ tuple value. If the value is _null_ then the splat expression will return an
empty tuple.
This special behavior can be useful for modules that accept optional input
variables whose default value is `null` to represent the absense of any value,
to adapt the variable value to work with other Terraform language features that
are designed to work with collections. For example:
variables whose default value is `null` to represent the absence of any value. This allows the module to adapt the variable value for Terraform language features designed to work with collections. For example:
```
variable "website" {

View File

@ -1,6 +1,8 @@
---
layout: "language"
page_title: "Strings and Templates - Configuration Language"
description: "String literals and template sequences interpolate values and manipulate text. Learn about both quoted and heredoc string syntax."
---
# Strings and Templates

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "Type Constraints - Configuration Language"
sidebar_current: "docs-config-types"
description: |-
Terraform module authors and provider developers can use detailed type
constraints to validate the inputs of their modules and resources.
description: "Learn how to use type constraints to validate user inputs to modules and resources."
---
# Type Constraints

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Types and Values - Configuration Language"
description: "Learn about value types and syntax, including string, number, bool, list, and map. Also learn about complex types and type conversion."
---
# Types and Values

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Version Constraints - Configuration Language"
description: "Version constraint strings specify a range of acceptable versions for modules, providers, and Terraform itself. Learn version constraint syntax and behavior."
---
# Version Constraints

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Files and Directories - Configuration Language"
description: "Learn how to name, organize, and store Terraform configuration files. Also learn how Terraform evaluates modules."
---
# Files and Directories

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "Override Files - Configuration Language"
sidebar_current: "docs-config-override"
description: |-
Override files allow additional settings to be merged into existing
configuration objects.
description: "Override files merge additional settings into existing configuration objects. Learn how to use override files and about merging behavior."
---
# Override Files

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "Functions - Configuration Language"
sidebar_current: "docs-config-functions"
description: |-
The Terraform language has a number of built-in functions that can be called
from within expressions to transform and combine values.
description: "An introduction to the built-in functions that you can use to transform and combine values in expressions."
---
# Built-in Functions

View File

@ -1,6 +1,8 @@
---
layout: "language"
page_title: "Overview - Configuration Language"
description: "You can use the Terraform language to write configuration files that tell Terraform how to manage a collection of infrastructure."
---
# Terraform Language Documentation

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "The count Meta-Argument - Configuration Language"
description: "`count` helps you efficiently manage nearly identical infrastructure resources without writing a separate block for each one."
---
# The `count` Meta-Argument

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "The depends_on Meta-Argument - Configuration Language"
description: "`depends_on` allows you to handle hidden resource or module dependencies."
---
# The `depends_on` Meta-Argument

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "The for_each Meta-Argument - Configuration Language"
description: "`for_each` allows you to efficiently manage similar infrastructure resources without writing a separate block for each one."
---
# The `for_each` Meta-Argument

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "The lifecycle Meta-Argument - Configuration Language"
description: "The meta-arguments in a `lifecycle` block allow you to customize resource behavior. For example, preventing Terraform from destroying associated infrastructure."
---
# The `lifecycle` Meta-Argument

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "The Module providers Meta-Argument - Configuration Language"
description: "`providers` specifies which provider configurations from a parent module are available in a child module."
---
# The Module `providers` Meta-Argument

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "The Resource provider Meta-Argument - Configuration Language"
description: "`provider` specifies the provider configuration Terraform should use for a resource, overriding Terraform's default behavior."
---
# The Resource `provider` Meta-Argument

View File

@ -2,8 +2,7 @@
layout: "language"
page_title: "Creating Modules"
sidebar_current: "docs-modules"
description: |-
A module is a container for multiple resources that are used together.
description: "Modules are containers for multiple resources that are used together in a configuration. Learn when to create modules and about module structure."
---
# Creating Modules

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Modules Overview - Configuration Language"
description: "Modules are containers for multiple resources that are used together in a configuration. Find resources for using, developing, and publishing modules."
---
# Modules

View File

@ -2,7 +2,7 @@
layout: "language"
page_title: "Module Sources"
sidebar_current: "docs-modules-sources"
description: The source argument within a module block specifies the location of the source code of a child module.
description: "`source` tells Terraform where to find child modules in locations like GitHub, the Terraform Registry, Bitbucket, Git, Mercurial, S3, and GCS."
---
# Module Sources
@ -36,7 +36,7 @@ types, as listed below.
* [S3 buckets](#s3-bucket)
* [GCS buckets](#gcs-bucket)
* [Modules in Package Sub-directories](#modules-in-package-sub-directories)
Each of these is described in the following sections. Module source addresses

View File

@ -2,8 +2,7 @@
layout: "language"
page_title: "Modules - Configuration Language"
sidebar_current: "docs-config-modules"
description: |-
Modules allow multiple resources to be grouped together and encapsulated.
description: "Modules are containers for multiple resources that are used together in configurations. Learn how to call one module from another and access module output."
---
# Module Blocks

View File

@ -2,14 +2,12 @@
layout: "language"
page_title: "Provider Configuration - Configuration Language"
sidebar_current: "docs-config-providers"
description: |-
Learn how to configure provider settings and alias providers to use multiple
different provider configurations in the same Terraform project.
description: "Learn how to set up providers, including how to use the `alias` meta-argument to specify multiple configurations for a single provider."
---
# Provider Configuration
Providers alow Terraform to interact with cloud providers, SaaS providers, and
Providers allow Terraform to interact with cloud providers, SaaS providers, and
other APIs.
Some providers require you to configure them with endpoint URLs, cloud regions,

View File

@ -1,10 +1,7 @@
---
layout: "language"
page_title: "Providers - Configuration Language"
description: |-
Terraform providers are plugins that allow Terraform to create resources and
use data sources from services, cloud providers, and other APIs. Read about
how to discover, install, and use providers.
description: "An overview of how to install and use providers, Terraform plugins that interact with services, cloud providers, and other APIs."
---
# Providers

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Provider Requirements - Configuration Language"
description: "Providers are plugins that allow Terraform to interact with services, cloud providers, and other APIs. Learn how to declare providers in a configuration."
---
# Provider Requirements

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Resource Behavior - Configuration Language"
description: "Learn how Terraform uses `resource` blocks to create infrastructure objects. Also learn about resource dependencies and how to access resource attributes."
---
# Resource Behavior

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Resources Overview - Configuration Language"
description: "`resources` describe infrastructure objects in Terraform configurations. Find documentation for resource syntax, behavior, and meta-arguments."
---
# Resources

View File

@ -2,8 +2,7 @@
layout: "language"
page_title: "Provisioner Connection Settings"
sidebar_current: "docs-provisioners-connection"
description: |-
Managing connection defaults for SSH and WinRM using the `connection` block.
description: "The `connection` block allows you to manage provisioner connection defaults for SSH and WinRM."
---
# Provisioner Connection Settings
@ -133,7 +132,7 @@ block would create a dependency cycle.
* `insecure` - Set to `true` to not validate the HTTPS certificate chain.
* `use_ntlm` - Set to `true` to use NTLM authentication, rather than default (basic authentication), removing the requirement for basic authentication to be enabled within the target guest. Further reading for remote connection authentication can be found [here](https://msdn.microsoft.com/en-us/library/aa384295(v=vs.85).aspx).
* `use_ntlm` - Set to `true` to use NTLM authentication, rather than default (basic authentication), removing the requirement for basic authentication to be enabled within the target guest. Further reading for remote connection authentication can be found [here](https://docs.microsoft.com/en-us/windows/win32/winrm/authentication-for-remote-connections?redirectedfrom=MSDN).
* `cacert` - The CA certificate to validate against.

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Provisioners Overview - Configuration Language"
description: "Provisioners model specific actions on a local or remote machine to prepare servers or other infrastructure for service."
---
# Provisioners

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "Provisioners Without a Resource"
sidebar_current: "docs-provisioners-null-resource"
description: |-
The `null_resource` is a resource allows you to configure provisioners that
are not directly associated with a single existing resource.
description: "'null_resource' allows you to configure provisioners that are not directly associated with a single existing resource."
---
# Provisioners Without a Resource

View File

@ -2,8 +2,7 @@
layout: "language"
page_title: "Provisioners"
sidebar_current: "docs-provisioners"
description: |-
Provisioners are used to execute scripts on a local or remote machine as part of resource creation or destruction.
description: "Provisioners run scripts on a local or remote machine during resource creation or destruction. Learn how to declare provisioners in a configuration."
---
# Provisioners
@ -102,7 +101,7 @@ for launching specific configuration management products.
We strongly recommend not using these, and instead running system configuration
steps during a custom image build process. For example,
[HashiCorp Packer](https://packer.io/) offers a similar complement of
[HashiCorp Packer](https://www.packer.io/) offers a similar complement of
configuration management provisioners and can run their installation steps
during a separate build process, before creating a system disk image that you
can deploy many times.

View File

@ -2,10 +2,7 @@
layout: "language"
page_title: "Resources - Configuration Language"
sidebar_current: "docs-config-resources"
description: |-
Resources are the most important element in a Terraform configuration.
Each resource corresponds to an infrastructure object, such as a virtual
network or compute instance.
description: "Resources correspond to infrastructure objects like virtual networks or compute instances. Learn about resource types, syntax, behavior, and arguments."
---
# Resource Blocks

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Backend Overview - Configuration Language"
description: "A backend defines where and how Terraform performs operations, such as where it stores state files. Learn about recommended backends and how backends work."
---
# Backends

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "Terraform Settings - Configuration Language"
sidebar_current: "docs-config-terraform"
description: |-
The "terraform" configuration section is used to configure some behaviors
of Terraform itself.
description: "The `terraform` block allows you to configure Terraform behavior, including the Terraform version, backend, and required providers."
---
# Terraform Settings

View File

@ -2,8 +2,7 @@
layout: "language"
page_title: "State"
sidebar_current: "docs-state"
description: |-
Terraform must store state about your managed infrastructure and configuration. This state is used by Terraform to map real world resources to your configuration, keep track of metadata, and to improve performance for large infrastructures.
description: "An introduction to state, information that Terraform uses to map resources to a configuration, track metadata, and improve performance."
---
# State

View File

@ -2,10 +2,7 @@
layout: "language"
page_title: "Syntax - Configuration Language"
sidebar_current: "docs-config-syntax"
description: |-
The Terraform language has its own syntax, intended to combine declarative
structure with expressions in a way that is easy for humans to read and
understand.
description: "Key constructs of the native Terraform language syntax, including identifiers, arguments, blocks, and comments."
---
# Configuration Syntax

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Syntax Overview - Configuration Language"
description: "Terraform language syntax for both the native and JSON variants. Also learn formatting conventions that you can enforce with `terraform fmt`."
---
# Syntax

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "JSON Configuration Syntax - Configuration Language"
sidebar_current: "docs-config-syntax-json"
description: |-
In addition to the native syntax that is most commonly used with Terraform,
the Terraform language can also be expressed in a JSON-compatible syntax.
description: "Learn about the JSON-compatible language syntax, including file structure, expression mapping, block mapping, and block-type-specific exceptions."
---
# JSON Configuration Syntax

View File

@ -2,10 +2,7 @@
layout: "language"
page_title: "Style Conventions - Configuration Language"
sidebar_current: "docs-config-style"
description: |-
The Terraform language has some idiomatic style conventions, which we
recommend users always follow for consistency between files and modules
written by different teams.
description: "Learn recommended formatting conventions for the Terraform language and a command to automatically enforce them."
---
# Style Conventions
@ -17,6 +14,8 @@ for consistency between files and modules written by different teams.
Automatic source code formatting tools may apply these conventions
automatically.
-> **Note**: You can enforce these conventions automatically by running [`terraform fmt`](/docs/cli/commands/fmt.html).
* Indent two spaces for each nesting level.
* When multiple arguments with single-line values appear on consecutive lines

View File

@ -1,6 +1,7 @@
---
layout: "language"
page_title: "Variables and Outputs"
description: "An overview of input variables, output values, and local values in Terraform language."
---
# Variables and Outputs

View File

@ -2,9 +2,7 @@
layout: "language"
page_title: "Local Values - Configuration Language"
sidebar_current: "docs-config-locals"
description: |-
Local values assign a name to an expression that can then be used multiple times
within a module.
description: "Local values assign a name to an expression that can be used multiple times within a Terraform module."
---
# Local Values

View File

@ -2,10 +2,7 @@
layout: "language"
page_title: "Input Variables - Configuration Language"
sidebar_current: "docs-config-variables"
description: |-
Input variables allow you to customize Terraform configuration according to
set parameters. Learn about input variable syntax, including how to declare,
define, and reference variables in root and child modules.
description: "Input variables allow you to customize modules without altering their source code. Learn how to declare, define, and reference variables in configurations."
---
# Input Variables