Skip to content

Releases: cloudposse/terraform-aws-mq-broker

v0.6.0

04 Feb 08:13
2e297e1
Compare
Choose a tag to compare
minimum required Terraform version bumped to 0.13.0, context.tf updated, readme updated @maximmi (#15)

what

  • update context.tf to v0.23.0
  • minimum required Terraform version bumped to 0.13.0
  • readme updated, Bridgecrew compliance badges added

why

  • It allows for setting the letter case of tag names and labels
  • we have dropped support for Terraform 0.12
  • To be able see and fix the recommendations from Bridgecrew so we can position our modules as standards compliant

v0.5.1

03 Feb 04:26
2ac93a2
Compare
Choose a tag to compare

🤖 Automatic Updates

Update README.md and docs @cloudpossebot (#14)

what

This is an auto-generated PR that updates the README.md and docs

why

To have most recent changes of README.md and doc from origin templates

v0.5.0

12 Jan 02:19
91dc29b
Compare
Choose a tag to compare
Terraform 0.14 upgrade @maximmi (#12)

what

  • Upgrade to support Terraform 0.14 and bring up to current Cloud Posse standard

why

  • Support Terraform 0.14

v0.4.1

01 Jan 04:37
76f2c30
Compare
Choose a tag to compare

🤖 Automatic Updates

Update README.md and docs @cloudpossebot (#11)

what

This is an auto-generated PR that updates the README.md and docs

why

To have most recent changes of README.md and doc from origin templates

v0.4.0

27 Dec 20:49
3a73c90
Compare
Choose a tag to compare
Convert to TF 0.13/0.14. Update to `context.tf`. Add example and tests. Add GitHub actions/workflows @aknysh (#9)

what

  • Convert to TF 0.13/0.14
  • Update to context.tf
  • Add example and tests
  • Add GitHub actions/workflows

why

  • Maintenance
  • Best practices
  • Keep the module up to date
Create chatops.yml @aknysh (#10)

0.3.0

22 Jan 18:33
3b1912e
Compare
Choose a tag to compare
Remove output splat syntax on nested map attributes (#4)

* Remove output splat syntax on nested map attributes

When initially building this module, it was done piece meal adding the
outputs once the initial apply had been done. apply/plan etc all looked
good after the initial apply. However, there is a bug whereby the splat
output fails when dealing with nested map attributes[1]. This issue was
raised by @igor when an initial plan/apply fails as the below example:

```
module.amq.output.primary_console_url: Resource 'aws_mq_broker.default' does not have attribute 'instances.0.console_url' for variable 'aws_mq_broker.default.*.instances.0.console_url'
```

Removing the splat style syntax resolved this issue, but the splat was
necessary due to the `count` (read: enabled flag) on the `aws_mq_broker`
resource. This “fix” works when `enabled = “true”` but fails when 
`enabled = “false”` as this ends up with a 0 count. It seems that trying
to use the splat syntax and asking for nested attributes (conditionally)
is not possible in current terraform. I think we likely have this issue
in other Terraform modules but don’t hit it as do not often set 
`enabled = “false”`

[1] https://github.com/hashicorp/terraform/issues/17048

* Remove enabled flag for the moment

As we do not have a safe way to disable the module. See 3b36149

0.2.0

21 Jan 10:11
505c7e6
Compare
Choose a tag to compare
Documentation update (#2)

* Add output descriptions

* Remove unused var from docs

0.1.0

18 Jan 10:25
42bcbf1
Compare
Choose a tag to compare
Initial implementation (#1)

* Initial module implementation

Note that the template is the default XML provided by AmazonMQ

* Change output format due to Terraform issue

Currently a plan is failing with lots of:

```
* module.amq.output.secondary_ampq_ssl_endpoint: Resource 'aws_mq_broker.default' does not have attribute 'instances.1.endpoints.1' for variable 'aws_mq_broker.default.*.instances.1.endpoints.1'
* module.amq.output.secondary_ip_address: Resource 'aws_mq_broker.default' does not have attribute 'instances.1.ip_address' for variable 'aws_mq_broker.default.*.instances.1.ip_address'
* module.amq.output.primary_console_url: Resource 'aws_mq_broker.default' does not have attribute 'instances.0.console_url' for variable 'aws_mq_broker.default.*.instances.0.console_url'
```

[1] https://github.com/hashicorp/terraform/issues/16681

* Move aws_mq_broker users into module

These should have been in the module that calls this module however
there is a Terraform bug [1] meaning passing the list of user maps is
failing when trying to use a local value.

From the calling module, the below does work:

```
  users = [{
    "username"       = "admin"
    "password"       = "defaultpassword"
    "groups"         = ["admin"]
    "console_access" = true
  }]
```

however, using locals as we want to, it does not:

```
  users = [{
    "username"       = “${local.admin_user}”
    "password"       = “${local.admin_password}”
    "groups"         = ["admin"]
    "console_access" = true
  }]
```

It is less than ideal to do all this user logic in the module, but MVP
and HCL 2 will fix all the worlds problems.

[1] https://github.com/hashicorp/terraform/issues/12263

* Update docs

* Move key_id into local

So we don’t duplicate the join/splat pattern

* Remove broker_name variable

This should just be `module.label.id` for consistency

* Consistent ordering of input variable params