You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| <aname="input_additional_ips_count"></a> [additional\_ips\_count](#input\_additional\_ips\_count)| Count of additional EIPs |`number`|`0`| no |
256
-
| <aname="input_additional_tag_map"></a> [additional\_tag\_map](#input\_additional\_tag\_map)| Additional tags for appending to tags\_as\_list\_of\_maps. Not added to `tags`. |`map(string)`|`{}`| no |
256
+
| <aname="input_additional_tag_map"></a> [additional\_tag\_map](#input\_additional\_tag\_map)| Additional key-value pairs to add to each map in `tags_as_list_of_maps`. Not added to `tags` or `id`.<br>This is for some rare cases where resources want additional configuration of tags<br>and therefore take a list of maps with tag key, value, and additional configuration. |`map(string)`|`{}`| no |
257
257
| <aname="input_ami"></a> [ami](#input\_ami)| The AMI to use for the instance. By default it is the AMI provided by Amazon with Ubuntu 16.04 |`string`|`""`| no |
258
258
| <aname="input_ami_owner"></a> [ami\_owner](#input\_ami\_owner)| Owner of the given AMI (ignored if `ami` unset, required if set) |`string`|`""`| no |
259
259
| <aname="input_applying_period"></a> [applying\_period](#input\_applying\_period)| The period in seconds over which the specified statistic is applied |`number`|`60`| no |
260
260
| <aname="input_assign_eip_address"></a> [assign\_eip\_address](#input\_assign\_eip\_address)| Assign an Elastic IP address to the instance |`bool`|`true`| no |
261
261
| <aname="input_associate_public_ip_address"></a> [associate\_public\_ip\_address](#input\_associate\_public\_ip\_address)| Associate a public IP address with the instance |`bool`|`false`| no |
262
-
| <aname="input_attributes"></a> [attributes](#input\_attributes)| Additional attributes (e.g. `1`)|`list(string)`|`[]`| no |
262
+
| <aname="input_attributes"></a> [attributes](#input\_attributes)|ID element. Additional attributes (e.g. `workers` or `cluster`) to add to `id`,<br>in the order they appear in the list. New attributes are appended to the<br>end of the list. The elements of the list are joined by the `delimiter`<br>and treated as a single ID element.|`list(string)`|`[]`| no |
263
263
| <aname="input_availability_zone"></a> [availability\_zone](#input\_availability\_zone)| Availability Zone the instance is launched in. If not set, will be launched in the first AZ of the region |`string`|`""`| no |
264
264
| <aname="input_comparison_operator"></a> [comparison\_operator](#input\_comparison\_operator)| The arithmetic operation to use when comparing the specified Statistic and Threshold. Possible values are: GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold. |`string`|`"GreaterThanOrEqualToThreshold"`| no |
265
-
| <aname="input_context"></a> [context](#input\_context)| Single object for setting entire context at once.<br>See description of individual variables for details.<br>Leave string and numeric variables as `null` to use default value.<br>Individual variable settings (non-null) override settings in context object,<br>except for attributes, tags, and additional\_tag\_map, which are merged. |`any`| <pre>{<br> "additional_tag_map": {},<br> "attributes": [],<br> "delimiter": null,<br> "enabled": true,<br> "environment": null,<br> "id_length_limit": null,<br> "label_key_case": null,<br> "label_order": [],<br> "label_value_case": null,<br> "name": null,<br> "namespace": null,<br> "regex_replace_chars": null,<br> "stage": null,<br> "tags": {}<br>}</pre> | no |
265
+
| <aname="input_context"></a> [context](#input\_context)| Single object for setting entire context at once.<br>See description of individual variables for details.<br>Leave string and numeric variables as `null` to use default value.<br>Individual variable settings (non-null) override settings in context object,<br>except for attributes, tags, and additional\_tag\_map, which are merged. |`any`| <pre>{<br> "additional_tag_map": {},<br> "attributes": [],<br> "delimiter": null,<br> "descriptor_formats": {},<br> "enabled": true,<br> "environment": null,<br> "id_length_limit": null,<br> "label_key_case": null,<br> "label_order": [],<br> "label_value_case": null,<br> "labels_as_tags": [<br> "unset"<br> ],<br> "name": null,<br> "namespace": null,<br> "regex_replace_chars": null,<br> "stage": null,<br> "tags": {},<br> "tenant": null<br>}</pre> | no |
266
266
| <aname="input_default_alarm_action"></a> [default\_alarm\_action](#input\_default\_alarm\_action)| Default alarm action |`string`|`"action/actions/AWS_EC2.InstanceId.Reboot/1.0"`| no |
267
267
| <aname="input_delete_on_termination"></a> [delete\_on\_termination](#input\_delete\_on\_termination)| Whether the volume should be destroyed on instance termination |`bool`|`true`| no |
268
-
| <aname="input_delimiter"></a> [delimiter](#input\_delimiter)| Delimiter to be used between `namespace`, `environment`, `stage`, `name` and `attributes`.<br>Defaults to `-` (hyphen). Set to `""` to use no delimiter at all. |`string`|`null`| no |
268
+
| <aname="input_delimiter"></a> [delimiter](#input\_delimiter)| Delimiter to be used between ID elements.<br>Defaults to `-` (hyphen). Set to `""` to use no delimiter at all. |`string`|`null`| no |
269
+
| <aname="input_descriptor_formats"></a> [descriptor\_formats](#input\_descriptor\_formats)| Describe additional descriptors to be output in the `descriptors` output map.<br>Map of maps. Keys are names of descriptors. Values are maps of the form<br>`{<br> format = string<br> labels = list(string)<br>}`<br>(Type is `any` so the map values can later be enhanced to provide additional options.)<br>`format` is a Terraform format string to be passed to the `format()` function.<br>`labels` is a list of labels, in order, to pass to `format()` function.<br>Label values will be normalized before being passed to `format()` so they will be<br>identical to how they appear in `id`.<br>Default is `{}` (`descriptors` output will be empty). |`any`|`{}`| no |
| <aname="input_ebs_device_name"></a> [ebs\_device\_name](#input\_ebs\_device\_name)| Name of the EBS device to mount |`list(string)`| <pre>[<br> "/dev/xvdb",<br> "/dev/xvdc",<br> "/dev/xvdd",<br> "/dev/xvde",<br> "/dev/xvdf",<br> "/dev/xvdg",<br> "/dev/xvdh",<br> "/dev/xvdi",<br> "/dev/xvdj",<br> "/dev/xvdk",<br> "/dev/xvdl",<br> "/dev/xvdm",<br> "/dev/xvdn",<br> "/dev/xvdo",<br> "/dev/xvdp",<br> "/dev/xvdq",<br> "/dev/xvdr",<br> "/dev/xvds",<br> "/dev/xvdt",<br> "/dev/xvdu",<br> "/dev/xvdv",<br> "/dev/xvdw",<br> "/dev/xvdx",<br> "/dev/xvdy",<br> "/dev/xvdz"<br>]</pre> | no |
271
272
| <aname="input_ebs_iops"></a> [ebs\_iops](#input\_ebs\_iops)| Amount of provisioned IOPS. This must be set with a volume\_type of io1 |`number`|`0`| no |
@@ -275,30 +276,31 @@ Available targets:
275
276
| <aname="input_ebs_volume_size"></a> [ebs\_volume\_size](#input\_ebs\_volume\_size)| Size of the additional EBS volumes in gigabytes |`number`|`10`| no |
276
277
| <aname="input_ebs_volume_type"></a> [ebs\_volume\_type](#input\_ebs\_volume\_type)| The type of the additional EBS volumes. Can be standard, gp2 or io1 |`string`|`"gp2"`| no |
277
278
| <aname="input_enabled"></a> [enabled](#input\_enabled)| Set to false to prevent the module from creating any resources |`bool`|`null`| no |
278
-
| <aname="input_environment"></a> [environment](#input\_environment)|Environment, e.g. 'uw2', 'us-west-2', OR 'prod', 'staging', 'dev', 'UAT' |`string`|`null`| no |
279
+
| <aname="input_environment"></a> [environment](#input\_environment)|ID element. Usually used for region e.g. 'uw2', 'us-west-2', OR role 'prod', 'staging', 'dev', 'UAT' |`string`|`null`| no |
279
280
| <aname="input_evaluation_periods"></a> [evaluation\_periods](#input\_evaluation\_periods)| The number of periods over which data is compared to the specified threshold. |`number`|`5`| no |
280
-
| <aname="input_id_length_limit"></a> [id\_length\_limit](#input\_id\_length\_limit)| Limit `id` to this many characters (minimum 6).<br>Set to `0` for unlimited length.<br>Set to `null` for default, which is`0`.<br>Does not affect `id_full`. |`number`|`null`| no |
281
+
| <aname="input_id_length_limit"></a> [id\_length\_limit](#input\_id\_length\_limit)| Limit `id` to this many characters (minimum 6).<br>Set to `0` for unlimited length.<br>Set to `null` for keep the existing setting, which defaults to`0`.<br>Does not affect `id_full`. |`number`|`null`| no |
281
282
| <aname="input_instance_initiated_shutdown_behavior"></a> [instance\_initiated\_shutdown\_behavior](#input\_instance\_initiated\_shutdown\_behavior)| Specifies whether an instance stops or terminates when you initiate shutdown from the instance. Can be one of 'stop' or 'terminate'. |`string`|`null`| no |
282
283
| <aname="input_instance_profile"></a> [instance\_profile](#input\_instance\_profile)| A pre-defined profile to attach to the instance (default is to build our own) |`string`|`""`| no |
283
284
| <aname="input_instance_type"></a> [instance\_type](#input\_instance\_type)| The type of the instance |`string`|`"t2.micro"`| no |
284
285
| <aname="input_ipv6_address_count"></a> [ipv6\_address\_count](#input\_ipv6\_address\_count)| Number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet (-1 to use subnet default) |`number`|`0`| no |
285
286
| <aname="input_ipv6_addresses"></a> [ipv6\_addresses](#input\_ipv6\_addresses)| List of IPv6 addresses from the range of the subnet to associate with the primary network interface |`list(string)`|`[]`| no |
286
287
| <aname="input_kms_key_id"></a> [kms\_key\_id](#input\_kms\_key\_id)| KMS key ID used to encrypt EBS volume. When specifying kms\_key\_id, ebs\_volume\_encrypted needs to be set to true |`string`|`null`| no |
287
-
| <aname="input_label_key_case"></a> [label\_key\_case](#input\_label\_key\_case)| The letter case of label keys (`tag` names) (i.e. `name`, `namespace`, `environment`, `stage`, `attributes`) to use in `tags`.<br>Possible values: `lower`, `title`, `upper`.<br>Default value: `title`. |`string`|`null`| no |
288
-
| <aname="input_label_order"></a> [label\_order](#input\_label\_order)| The naming order of the id output and Name tag.<br>Defaults to ["namespace", "environment", "stage", "name", "attributes"].<br>You can omit any of the 5 elements, but at least one must be present. |`list(string)`|`null`| no |
289
-
| <aname="input_label_value_case"></a> [label\_value\_case](#input\_label\_value\_case)| The letter case of output label values (also used in `tags` and `id`).<br>Possible values: `lower`, `title`, `upper` and `none` (no transformation).<br>Default value: `lower`. |`string`|`null`| no |
288
+
| <aname="input_label_key_case"></a> [label\_key\_case](#input\_label\_key\_case)| Controls the letter case of the `tags` keys (label names) for tags generated by this module.<br>Does not affect keys of tags passed in via the `tags` input.<br>Possible values: `lower`, `title`, `upper`.<br>Default value: `title`. |`string`|`null`| no |
289
+
| <aname="input_label_order"></a> [label\_order](#input\_label\_order)| The order in which the labels (ID elements) appear in the `id`.<br>Defaults to ["namespace", "environment", "stage", "name", "attributes"].<br>You can omit any of the 6 labels ("tenant" is the 6th), but at least one must be present. |`list(string)`|`null`| no |
290
+
| <aname="input_label_value_case"></a> [label\_value\_case](#input\_label\_value\_case)| Controls the letter case of ID elements (labels) as included in `id`,<br>set as tag values, and output by this module individually.<br>Does not affect values of tags passed in via the `tags` input.<br>Possible values: `lower`, `title`, `upper` and `none` (no transformation).<br>Set this to `title` and set `delimiter` to `""` to yield Pascal Case IDs.<br>Default value: `lower`. |`string`|`null`| no |
291
+
| <aname="input_labels_as_tags"></a> [labels\_as\_tags](#input\_labels\_as\_tags)| Set of labels (ID elements) to include as tags in the `tags` output.<br>Default is to include all labels.<br>Tags with empty values will not be included in the `tags` output.<br>Set to `[]` to suppress all generated tags.<br>**Notes:**<br> The value of the `name` tag, if included, will be the `id`, not the `name`.<br> Unlike other `null-label` inputs, the initial setting of `labels_as_tags` cannot be<br> changed in later chained modules. Attempts to change it will be silently ignored. |`set(string)`| <pre>[<br> "default"<br>]</pre> | no |
290
292
| <aname="input_metadata_http_endpoint_enabled"></a> [metadata\_http\_endpoint\_enabled](#input\_metadata\_http\_endpoint\_enabled)| Whether the metadata service is available |`bool`|`true`| no |
291
293
| <aname="input_metadata_http_put_response_hop_limit"></a> [metadata\_http\_put\_response\_hop\_limit](#input\_metadata\_http\_put\_response\_hop\_limit)| The desired HTTP PUT response hop limit (between 1 and 64) for instance metadata requests. |`number`|`2`| no |
292
294
| <aname="input_metadata_http_tokens_required"></a> [metadata\_http\_tokens\_required](#input\_metadata\_http\_tokens\_required)| Whether or not the metadata service requires session tokens, also referred to as Instance Metadata Service Version 2. |`bool`|`true`| no |
293
295
| <aname="input_metric_name"></a> [metric\_name](#input\_metric\_name)| The name for the alarm's associated metric. Allowed values can be found in https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ec2-metricscollected.html|`string`|`"StatusCheckFailed_Instance"`| no |
294
296
| <aname="input_metric_namespace"></a> [metric\_namespace](#input\_metric\_namespace)| The namespace for the alarm's associated metric. Allowed values can be found in https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-namespaces.html|`string`|`"AWS/EC2"`| no |
295
297
| <aname="input_metric_threshold"></a> [metric\_threshold](#input\_metric\_threshold)| The value against which the specified statistic is compared |`number`|`1`| no |
296
298
| <aname="input_monitoring"></a> [monitoring](#input\_monitoring)| Launched EC2 instance will have detailed monitoring enabled |`bool`|`true`| no |
297
-
| <aname="input_name"></a> [name](#input\_name)|Solution name, e.g. 'app' or 'jenkins' |`string`|`null`| no |
298
-
| <aname="input_namespace"></a> [namespace](#input\_namespace)|Namespace, which could be your organization name or abbreviation, e.g. 'eg' or 'cp' |`string`|`null`| no |
299
+
| <aname="input_name"></a> [name](#input\_name)|ID element. Usually the component or solution name, e.g. 'app' or 'jenkins'.<br>This is the only ID element not also included as a `tag`.<br>The "name" tag is set to the full `id` string. There is no tag with the value of the `name` input.|`string`|`null`| no |
300
+
| <aname="input_namespace"></a> [namespace](#input\_namespace)|ID element. Usually an abbreviation of your organization name, e.g. 'eg' or 'cp', to help ensure generated IDs are globally unique|`string`|`null`| no |
299
301
| <aname="input_permissions_boundary_arn"></a> [permissions\_boundary\_arn](#input\_permissions\_boundary\_arn)| Policy ARN to attach to instance role as a permissions boundary |`string`|`""`| no |
300
302
| <aname="input_private_ip"></a> [private\_ip](#input\_private\_ip)| Private IP address to associate with the instance in the VPC |`string`|`""`| no |
301
-
| <aname="input_regex_replace_chars"></a> [regex\_replace\_chars](#input\_regex\_replace\_chars)|Regex to replace chars with empty string in `namespace`, `environment`, `stage` and `name`.<br>If not set, `"/[^a-zA-Z0-9-]/"` is used to remove all characters other than hyphens, letters and digits. |`string`|`null`| no |
303
+
| <aname="input_regex_replace_chars"></a> [regex\_replace\_chars](#input\_regex\_replace\_chars)|Terraform regular expression (regex) string.<br>Characters matching the regex will be removed from the ID elements.<br>If not set, `"/[^a-zA-Z0-9-]/"` is used to remove all characters other than hyphens, letters and digits. |`string`|`null`| no |
302
304
| <aname="input_region"></a> [region](#input\_region)| AWS Region the instance is launched in |`string`|`""`| no |
303
305
| <aname="input_root_block_device_encrypted"></a> [root\_block\_device\_encrypted](#input\_root\_block\_device\_encrypted)| Whether to encrypt the root block device |`bool`|`true`| no |
304
306
| <aname="input_root_iops"></a> [root\_iops](#input\_root\_iops)| Amount of provisioned IOPS. This must be set if root\_volume\_type is set to `io1`|`number`|`0`| no |
@@ -314,10 +316,11 @@ Available targets:
314
316
| <aname="input_ssm_patch_manager_enabled"></a> [ssm\_patch\_manager\_enabled](#input\_ssm\_patch\_manager\_enabled)| Whether to enable SSM Patch manager |`bool`|`false`| no |
315
317
| <aname="input_ssm_patch_manager_iam_policy_arn"></a> [ssm\_patch\_manager\_iam\_policy\_arn](#input\_ssm\_patch\_manager\_iam\_policy\_arn)| IAM policy ARN to allow Patch Manager to manage the instance. If not provided, `arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore` will be used |`string`|`null`| no |
316
318
| <aname="input_ssm_patch_manager_s3_log_bucket"></a> [ssm\_patch\_manager\_s3\_log\_bucket](#input\_ssm\_patch\_manager\_s3\_log\_bucket)| The name of the s3 bucket to export the patch log to |`string`|`null`| no |
317
-
| <aname="input_stage"></a> [stage](#input\_stage)|Stage, e.g. 'prod', 'staging', 'dev', OR 'source', 'build', 'test', 'deploy', 'release' |`string`|`null`| no |
319
+
| <aname="input_stage"></a> [stage](#input\_stage)|ID element. Usually used to indicate role, e.g. 'prod', 'staging', 'source', 'build', 'test', 'deploy', 'release' |`string`|`null`| no |
318
320
| <aname="input_statistic_level"></a> [statistic\_level](#input\_statistic\_level)| The statistic to apply to the alarm's associated metric. Allowed values are: SampleCount, Average, Sum, Minimum, Maximum |`string`|`"Maximum"`| no |
319
321
| <aname="input_subnet"></a> [subnet](#input\_subnet)| VPC Subnet ID the instance is launched in |`string`| n/a | yes |
320
-
| <aname="input_tags"></a> [tags](#input\_tags)| Additional tags (e.g. `map('BusinessUnit','XYZ')`|`map(string)`|`{}`| no |
322
+
| <aname="input_tags"></a> [tags](#input\_tags)| Additional tags (e.g. `{'BusinessUnit': 'XYZ'}`).<br>Neither the tag keys nor the tag values will be modified by this module. |`map(string)`|`{}`| no |
323
+
| <aname="input_tenant"></a> [tenant](#input\_tenant)| ID element \_(Rarely used, not included by default)\_. A customer identifier, indicating who this instance of a resource is for |`string`|`null`| no |
321
324
| <aname="input_user_data"></a> [user\_data](#input\_user\_data)| The user data to provide when launching the instance. Do not pass gzip-compressed data via this argument; use `user_data_base64` instead |`string`|`null`| no |
322
325
| <aname="input_user_data_base64"></a> [user\_data\_base64](#input\_user\_data\_base64)| Can be used instead of `user_data` to pass base64-encoded binary data directly. Use this instead of `user_data` whenever the value is not a valid UTF-8 string. For example, gzip-encoded user data must be base64-encoded and passed via this argument to avoid corruption |`string`|`null`| no |
323
326
| <aname="input_volume_tags_enabled"></a> [volume\_tags\_enabled](#input\_volume\_tags\_enabled)| Whether or not to copy instance tags to root and EBS volumes |`bool`|`true`| no |
0 commit comments