# LaunchTemplate This module created EC2 launch template. If a single instance type is specified it will create launch template with that instance type. If multiple types are specified then a launch template with instance\_requirements will be created. Root ebs volume is always encrypted - either with the aws/ebs key or a customer managed key ## Requirements | Name | Version | |------|---------| | terraform | >= 1.3.0 | | aws | >= 5.0 | ## Providers | Name | Version | |------|---------| | aws | >= 5.0 | ## Modules No modules. ## Resources | Name | Type | |------|------| | [aws_launch_template.lt](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/launch_template) | resource | | [aws_ami.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/ami) | data source | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | cpu\_count\_max | Maximum vcpu count for setting up instance\_requirements | `number` | `null` | no | | cpu\_count\_min | Minimum vcpu count for setting up instance\_requirements | `number` | `null` | no | | description | Description of launch template | `string` | n/a | yes | | ebs\_volume\_kms\_key\_id | KMS key id for EBS encryption - a default key will be used if not specified | `string` | `null` | no | | image\_id | AMI id of launch template | `string` | n/a | yes | | imdsv2\_required | Use IMDSv2 for ec2 instance | `bool` | `true` | no | | instance\_initiated\_shutdown\_behavior | Shutdown behavior for the instance - stop (default) or terminate | `string` | `"stop"` | no | | instance\_profile\_name | Name of iam instance profile | `string` | `null` | no | | instance\_types | Types of instances allowed for this launch template | `list(string)` | n/a | yes | | key\_name | Name of keypair | `string` | `null` | no | | mem\_mib\_max | Maximum memory size (mib) for setting up instance\_requirements | `number` | `null` | no | | mem\_mib\_min | Minimum memory size (mib) for setting up instance\_requirements | `number` | `null` | no | | name | Name of launch template | `string` | n/a | yes | | root\_volume\_size | Size of root volume in GB | `number` | n/a | yes | | root\_volume\_type | Root volume type - default gp3 | `string` | `"gp3"` | no | | security\_grouo\_ids | List of security group ids | `list(string)` | `[]` | no | | tag\_specifications | Tags to be added to instance and volume | `map(string)` | n/a | yes | | update\_default\_version | Point default version to the latest | `bool` | `true` | no | | userdata\_base64 | Base64 encoded userdata | `string` | n/a | yes | ## Outputs | Name | Description | |------|-------------| | launch\_template\_id | ID of launch template | --- ## Authorship This module was developed by xpk.