stack-config
cloudposse/stack-config/yaml
Terraform module that loads an opinionated 'stack' configuration from local or remote YAML sources. It supports deep-merged variables, settings, ENV variables, backend config, and remote state outputs for Terraform and helmfile components.
Terraform module that loads and processes an opinionated "stack" configuration from YAML sources using the terraform-provider-utils Terraform provider. It supports deep-merged variables, settings, ENV variables, backend config, remote state, and Spacelift stacks config outputs for Terraform and helmfile components. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Introduction The module is composed of the following sub-modules: - vars - accepts stack configuration and returns deep-merged variables for a Terraform or helmfile co
| Name | Type | Description | Default |
|---|---|---|---|
| stack_config_local_path | string | Path to local stack configs | required |
| stacks | list(string) | A list of infrastructure stack names | required |
| enabled | bool | Set to false to prevent the module from creating any resources | null |
| environment | string | ID element. Usually used for region e.g. 'uw2', 'us-west-2', OR role 'prod', 'st | null |
| name | string | ID element. Usually the component or solution name, e.g. 'app' or 'jenkins'. Thi | null |
| delimiter | string | Delimiter to be used between ID elements. Defaults to `-` (hyphen). Set to `""` | null |
| regex_replace_chars | string | Terraform regular expression (regex) string. Characters matching the regex will | null |
| context | any | Single object for setting entire context at once. See description of individual | {
"additional_tag_map": {},
"attribu |
| tenant | string | ID element _(Rarely used, not included by default)_. A customer identifier, indi | null |
| labels_as_tags | set(string) | Set of labels (ID elements) to include as tags in the `tags` output. Default is | [
"default"
] |
| label_order | list(string) | The order in which the labels (ID elements) appear in the `id`. Defaults to ["na | null |
| component_deps_processing_enabled | bool | Boolean flag to enable/disable processing stack config dependencies for the comp | false |
| namespace | string | ID element. Usually an abbreviation of your organization name, e.g. 'eg' or 'cp' | null |
| attributes | list(string) | ID element. Additional attributes (e.g. `workers` or `cluster`) to add to `id`, | [] |
| tags | map(string) | Additional tags (e.g. `{'BusinessUnit': 'XYZ'}`). Neither the tag keys nor the t | {} |
| label_key_case | string | Controls the letter case of the `tags` keys (label names) for tags generated by | null |
| label_value_case | string | Controls the letter case of ID elements (labels) as included in `id`, set as tag | null |
| stack_deps_processing_enabled | bool | Boolean flag to enable/disable processing all stack dependencies in the provided | false |
| stage | string | ID element. Usually used to indicate role, e.g. 'prod', 'staging', 'source', 'bu | null |
| additional_tag_map | map(string) | Additional key-value pairs to add to each map in `tags_as_list_of_maps`. Not add | {} |
| id_length_limit | number | Limit `id` to this many characters (minimum 6). Set to `0` for unlimited length. | null |
| descriptor_formats | any | Describe additional descriptors to be output in the `descriptors` output map. Ma | {} |
config — Stack configurationsAzure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,