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
<ahref="https://twitter.com/intent/follow?screen_name=RhythmicTech"><imgsrc="https://img.shields.io/twitter/follow/RhythmicTech?style=social&logo=twitter"alt="follow on Twitter"></a>
10
10
11
-
Terraform module that creates EC2 Image Builder components with CloudFormation
12
-
11
+
Terraform module that creates EC2 Image Builder components using ansible
13
12
## Example
14
13
```hcl
15
14
data "aws_caller_identity" "current" {
@@ -89,48 +88,60 @@ module "test_pipeline" {
89
88
```
90
89
91
90
## About
92
-
This module bridges the gap allowing Terraform to create EC2 Image Builder components (especially with Ansible) until native support is added to Terraform
91
+
This module allows creation of an Ansible Playbook component for use in EC2 Image Builder Recipes.
93
92
94
93
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
|[aws_caller_identity.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity)| data source |
117
+
|[aws_region.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/region)| data source |
118
+
|[aws_secretsmanager_secret.ssh_key](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret)| data source |
107
119
108
120
## Inputs
109
121
110
122
| Name | Description | Type | Default | Required |
|component\_version|Version of the component |`string`|n/a|yes|
113
-
| name| name to use for component |`string`| n/a | yes |
114
-
|playbook\_repo|git url for repo where ansible code lives with provisioning playbook and requirements file<br>can append with `-b BRANCH_NAME` to clone a specific branch |`string`|n/a | yes|
115
-
|change\_description | description of changes since last version|`string`|`null`| no |
116
-
|cloudformation\_timeout|How long to wait (in minutes) for CFN to apply before giving up |`number`|`10`| no |
117
-
|data\_uri|Use this to override the component document with one at a particualar URL endpoint |`string`|`null`|no|
118
-
|description | description of component |`string`|`null`| no |
119
-
|kms\_key\_id|KMS key to use for encryption|`string`|`null`| no |
120
-
|platform | platform of component (Linux or Windows) |`string`|`"Linux"`| no |
121
-
| playbook\_dir|directory where playbook and requirements are found (if not root of repo) |`string`|`null`|no|
122
-
|playbook\_file|path to playbook file, relative to `playbook_dir`|`string`|`"provision.yml"`| no |
123
-
| ssh\_key\_secret\_arn|ARN of a secretsmanager secret containing an SSH key (use arn OR name, not both) |`string`|`null`| no |
124
-
|ssh\_key\_secret\_name|Name of a secretsmanager secret containing an SSH key (use arn OR name, not both) |`string`|`null`| no |
125
-
| tags | map of tags to use for CFN stack and component |`map(string)`|`{}`| no |
124
+
|<aname="input_change_description"></a> [change\_description](#input\_change\_description)|description of changes since last version |`string`|`null`|no|
125
+
|<aname="input_component_version"></a> [component\_version](#input\_component\_version)| Version of the component |`string`| n/a | yes |
126
+
|<aname="input_data_uri"></a> [data\_uri](#input\_data\_uri)|Use this to override the component document with one at a particualar URL endpoint |`string`|`null`|no|
127
+
|<aname="input_description"></a> [description](#input\_description)| description of component|`string`|`null`| no |
128
+
|<aname="input_kms_key_id"></a> [kms\_key\_id](#input\_kms\_key\_id)|KMS key to use for encryption |`string`|`null`| no |
129
+
|<aname="input_name"></a> [name](#input\_name)|name to use for component |`string`|n/a|yes|
130
+
|<aname="input_platform"></a> [platform](#input\_platform)| platform of component (Linux or Windows) |`string`|`"Linux"`| no |
131
+
|<aname="input_playbook_dir"></a> [playbook\_dir](#input\_playbook\_dir)|directory where playbook and requirements are found (if not root of repo)|`string`|`null`| no |
132
+
|<aname="input_playbook_file"></a> [playbook\_file](#input\_playbook\_file)| path to playbook file, relative to `playbook_dir`|`string`|`"provision.yml"`| no |
133
+
|<aname="input_playbook_repo"></a> [playbook\_repo](#input\_playbook\_repo)|git url for repo where ansible code lives with provisioning playbook and requirements file<br>can append with `-b BRANCH_NAME` to clone a specific branch |`string`|n/a|yes|
134
+
|<aname="input_ssh_key_secret_arn"></a> [ssh\_key\_secret\_arn](#input\_ssh\_key\_secret\_arn)|ARN of a secretsmanager secret containing an SSH key (use arn OR name, not both) |`string`|`null`| no |
135
+
|<aname="input_ssh_key_secret_name"></a> [ssh\_key\_secret\_name](#input\_ssh\_key\_secret\_name)|Name of a secretsmanager secret containing an SSH key (use arn OR name, not both) |`string`|`null`| no |
136
+
|<aname="input_supported_os_versions"></a> [supported\_os\_versions](#input\_supported\_os\_versions)|A set of operating system versions supported by the component. If the OS information is available, a prefix match is performed against the base image OS version during image recipe creation. |`set(string)`|`null`| no |
137
+
|<aname="input_tags"></a> [tags](#input\_tags)| map of tags to use for CFN stack and component |`map(string)`|`{}`| no |
126
138
127
139
## Outputs
128
140
129
141
| Name | Description |
130
142
|------|-------------|
131
-
| component\_arn | ARN of the EC2 Image Builder Component |
132
-
| latest\_minor\_version\_arn | ARN of the EC2 Image Builder Component |
133
-
143
+
| <aname="output_component_arn"></a> [component\_arn](#output\_component\_arn)| ARN of the EC2 Image Builder Component |
144
+
| <aname="output_latest_minor_version_arn"></a> [latest\_minor\_version\_arn](#output\_latest\_minor\_version\_arn)| ARN of the EC2 Image Builder Component |
description="A set of operating system versions supported by the component. If the OS information is available, a prefix match is performed against the base image OS version during image recipe creation."
77
+
type=set(string)
78
+
}
79
+
80
80
variable"tags" {
81
81
default={}
82
82
description="map of tags to use for CFN stack and component"
0 commit comments