mirror of
https://github.com/opentofu/opentofu.git
synced 2024-12-28 01:41:48 -06:00
Merge pull request #29117 from hashicorp/description-metadata-language-docs
Description metadata - language docs
This commit is contained in:
commit
b9c0cbb1fd
@ -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.
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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."
|
||||
---
|
||||
|
||||
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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" {
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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,
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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.
|
||||
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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.
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user