|
1 | | -# terraform-terraform-template |
| 1 | +# terraform-aws-component-ansible-setup |
2 | 2 | Template repository for terraform modules. Good for any cloud and any provider. |
3 | 3 |
|
4 | | -[](https://github.com/rhythmictech/terraform-terraform-template/actions?query=workflow%3Atflint+event%3Apush+branch%3Amaster) |
5 | | -[](https://github.com/rhythmictech/terraform-terraform-template/actions?query=workflow%3Atfsec+event%3Apush+branch%3Amaster) |
6 | | -[](https://github.com/rhythmictech/terraform-terraform-template/actions?query=workflow%3Ayamllint+event%3Apush+branch%3Amaster) |
7 | | -[](https://github.com/rhythmictech/terraform-terraform-template/actions?query=workflow%3Amisspell+event%3Apush+branch%3Amaster) |
8 | | -[](https://github.com/rhythmictech/terraform-terraform-template/actions?query=workflow%3Apre-commit-check+event%3Apush+branch%3Amaster) |
| 4 | +[](https://github.com/rhythmictech/terraform-aws-component-ansible-setup/actions?query=workflow%3Atflint+event%3Apush+branch%3Amaster) |
| 5 | +[](https://github.com/rhythmictech/terraform-aws-component-ansible-setup/actions?query=workflow%3Atfsec+event%3Apush+branch%3Amaster) |
| 6 | +[](https://github.com/rhythmictech/terraform-aws-component-ansible-setup/actions?query=workflow%3Ayamllint+event%3Apush+branch%3Amaster) |
| 7 | +[](https://github.com/rhythmictech/terraform-aws-component-ansible-setup/actions?query=workflow%3Amisspell+event%3Apush+branch%3Amaster) |
| 8 | +[](https://github.com/rhythmictech/terraform-aws-component-ansible-setup/actions?query=workflow%3Apre-commit-check+event%3Apush+branch%3Amaster) |
9 | 9 | <a href="https://twitter.com/intent/follow?screen_name=RhythmicTech"><img src="https://img.shields.io/twitter/follow/RhythmicTech?style=social&logo=twitter" alt="follow on Twitter"></a> |
10 | 10 |
|
| 11 | +Terraform module that creates an EC2 Image Builder component with CloudFormation which installs Ansible on Amazon Linux 2 |
| 12 | + |
11 | 13 | ## Example |
12 | | -Here's what using the module will look like |
13 | 14 | ```hcl |
14 | | -module "example" { |
15 | | - source = "rhythmictech/terraform-mycloud-mymodule |
| 15 | +module "test_component" { |
| 16 | + source = "rhythmictech/imagebuilder-component-ansible-setup/aws" |
| 17 | + version = "~> 1.0.0-rc1" |
| 18 | +
|
| 19 | + component_version = "1.0.0" |
| 20 | + description = "Testing component" |
| 21 | + name = "testing-component" |
| 22 | + tags = local.tags |
16 | 23 | } |
17 | 24 | ``` |
18 | 25 |
|
19 | 26 | ## About |
20 | | -A bit about this module |
| 27 | +This module bridges the gap allowing Terraform to create an EC2 Image Builder component which installs Ansible on Amazon Linux 2 until native support for Image Builder is added to Terraform |
21 | 28 |
|
22 | 29 | <!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK --> |
23 | 30 | ## Requirements |
24 | 31 |
|
25 | 32 | | Name | Version | |
26 | 33 | |------|---------| |
27 | | -| terraform | >= 0.12.14 | |
| 34 | +| terraform | >= 0.12.28 | |
| 35 | +| aws | >= 2.44, < 4.0.0 | |
28 | 36 |
|
29 | 37 | ## Providers |
30 | 38 |
|
31 | | -No provider. |
| 39 | +| Name | Version | |
| 40 | +|------|---------| |
| 41 | +| aws | >= 2.44, < 4.0.0 | |
32 | 42 |
|
33 | 43 | ## Inputs |
34 | 44 |
|
35 | 45 | | Name | Description | Type | Default | Required | |
36 | 46 | |------|-------------|------|---------|:--------:| |
37 | | -| name | Moniker to apply to all resources in the module | `string` | n/a | yes | |
38 | | -| tags | User-Defined tags | `map(string)` | `{}` | no | |
| 47 | +| component\_version | Version of the component | `string` | n/a | yes | |
| 48 | +| name | name to use for component | `string` | n/a | yes | |
| 49 | +| change\_description | description of changes since last version | `string` | `null` | no | |
| 50 | +| cloudformation\_timeout | How long to wait (in minutes) for CFN to apply before giving up | `number` | `10` | no | |
| 51 | +| data\_uri | Use this to override the component document with one at a particualar URL endpoint | `string` | `null` | no | |
| 52 | +| description | description of component | `string` | `null` | no | |
| 53 | +| kms\_key\_id | KMS key to use for encryption | `string` | `null` | no | |
| 54 | +| platform | platform of component (Linux or Windows) | `string` | `"Linux"` | no | |
| 55 | +| ssh\_key\_secret\_arn | ARN of a secretsmanager secret containing an SSH key (use arn OR name, not both) | `string` | `null` | no | |
| 56 | +| ssh\_key\_secret\_name | Name of a secretsmanager secret containing an SSH key (use arn OR name, not both) | `string` | `null` | no | |
| 57 | +| tags | map of tags to use for CFN stack and component | `map(string)` | `{}` | no | |
39 | 58 |
|
40 | 59 | ## Outputs |
41 | 60 |
|
42 | 61 | | Name | Description | |
43 | 62 | |------|-------------| |
44 | | -| tags\_module | Tags Module in it's entirety | |
| 63 | +| component\_arn | ARN of the EC2 Image Builder Component | |
45 | 64 |
|
46 | 65 | <!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK --> |
47 | 66 |
|
48 | | -## The Giants Underneath this Module |
49 | | -- [pre-commit.com](pre-commit.com) |
50 | | -- [terraform.io](terraform.io) |
51 | | -- [github.com/tfutils/tfenv](github.com/tfutils/tfenv) |
52 | | -- [github.com/segmentio/terraform-docs](github.com/segmentio/terraform-docs) |
| 67 | +## The Giants underneath this module |
| 68 | +- pre-commit.com/ |
| 69 | +- terraform.io/ |
| 70 | +- github.com/tfutils/tfenv |
| 71 | +- github.com/segmentio/terraform-docs |
0 commit comments