Gruntwork release 2019-09
Guides / Update Guides / Releases / 2019-09
This page is lists all the updates to the Gruntwork Infrastructure as Code
Library that were released in 2019-09. For instructions
on how to use these updates in your code, check out the updating
documentation.
Here are the repos that were updated:
Published: 9/24/2019 | Release notes
Published: 9/25/2019 | Modules affected: cloudwatch-logs-metric-filters | Release notes
Published: 9/13/2019 | Modules affected: generate-aws-config | Release notes
This release ships the tool generate-aws-config which can be used to generate a Terraform module that will provision and configure AWS Config on all enabled regions for the account.
Published: 9/16/2019 | Modules affected: rds | Release notes
- The rdsmodule now supports storage auto scaling by allowing you to set a new optional input variable calledmax_allocated_storage. To make this work, we have also changed the default storage type fromstandard(i.e., magnetic) togp2(i.e., SSD). This is a backwards incompatible change; if you were using magnetic storage and wish to keep using it, you can override the default storage type by using thestorage_typeinput variable.
Published: 9/12/2019 | Modules affected: aurora | Release notes
- Add support for Aurora Global Clusters and include an example.
Published: 9/11/2019 | Modules affected: aurora | Release notes
- Added the cluster_resource_idoutput to the Aurora module.
- Fix for Broken Nightly Builds.
Published: 9/22/2019 | Modules affected: ecs-deploy | Release notes
- Fix a bug in the run-ecs-taskscript where it was not forcing theawsCLI output to be JSON, so the script would fail if a user had overridden the default on their systems to have text output.
Published: 9/18/2019 | Modules affected: ecs-service-with-alb | Release notes
- Switch the ecs-service-with-albmodule from usingtemplate_filedata sources tolocalvariables for intermediate variables. This fixes an issue whereterraform planwas incorrectly reporting ECS services being recreated.
Published: 9/9/2019 | Modules affected: ecs-fargate | Release notes
- The ecs-fargatemodule has been updated to only enable ecs deployment check when desired tasks > 0. This allows you to setdesired_tasksto 0 to scale down your service.
- The ecs-fargatemodule has been updated to add task definition ARN as an output, under the nameaws_ecs_task_definition_arn.
Published: 9/20/2019 | Modules affected: eks-cluster-control-plane | Release notes
- Fix a bug in the upgrade_clusterscript used in theeks-cluster-control-planemodule where the script incorrectly redeployed the plugins when using a region other thanus-west-2, even though the versions were already up to date.
Published: 9/17/2019 | Modules affected: eks-cloudwatch-container-logs, eks-cluster-control-plane | Release notes
- Docs improvements.
- Improves module stability. Specifically, IAM resources now have a 30 second wait to avoid propagation errors.
Published: 9/17/2019 | Modules affected: eks-iam-role-assume-role-policy-for-service-account, eks-cluster-workers, eks-cluster-control-plane | Release notes
Published: 9/17/2019 | Modules affected: eks-cluster-control-plane | Release notes
- The cluster upgrade script that runs to update the Kubernetes plugins installed in the EKS cluster now only updates the components when the versions mismatch.
- The cluster upgrade script can now be turned off by setting the use_upgrade_cluster_scriptinput variable tofalse.
Published: 9/11/2019 | Modules affected: eks-cluster-control-plane | Release notes
eks-cluster-control-plane module now supports upgrading Kubernetes components to the expected version for the Kubernetes version deployed on EKS. This is handled using a python script that is run everytime the kubernetes version is updated on the cluster. The deployed versions of each component follows what is described in the official upgrade guide
Additionally, this release includes a few code formatting and example updates that do not affect the underlying modules.
Published: 9/20/2019 | Modules affected: nlb | Release notes
- The nlbmodule has been deprecated and removed. When https://github.com/gruntwork-io/module-load-balancer/issues/61 was fixed, thenlbmodule reduced to being a thin wrapper over theaws_lbresource and thus it no longer made sense to maintain the module. Instead, users of the module should update to using theaws_lbresource directly.
Refer to the provided migration guide for information on how to replace your usage of the nlb module with the aws_lb resource, including migrating the state to avoid downtime.
Published: 9/10/2019 | Modules affected: alb | Release notes
- Update how the albmodule calculates the ALB ARN to uselocalsinstead of atemplate_file. Thetemplate_fileseemed to interfere with how Terraform calculated theplan, so if were upgrading from Terraform 0.11, this lead to aplanoutput that incorrectly reported that your listeners would be recreated (which could lead to downtime). With this new version, the listeners should be modified in place, without any downtime.
Published: 9/25/2019 | Modules affected: cloudwatch-logs-metric-filters | Release notes
- The cloudwatch-logs-metric-filtersmodule uses syntax that wasn't available prior to Terraform version0.12.6. This version is now required by the module.
Published: 9/24/2019 | Modules affected: logs/cloudwatch-logs-metric-filters, examples/cloudwatch-to-slack | Release notes
- This release adds the cloudwatch-logs-metric-filtersmodule. The module accepts a map of filter objects and creates a metric filter with associated metric alarm. Use this module to monitor a CloudWatch Logs group for a particular pattern and be notified via SNS when the pattern is matched.
- The update also bumps the sns-to-slack example to use an ubuntu18 server
Published: 9/20/2019 | Modules affected: install-openvpn | Release notes
Published: 9/3/2019 | Modules affected: install-openvpn | Release notes
- Fix a bug where command-line arguments were not being passed to the install-openvpnscript.
Published: 9/26/2019 | Modules affected: cloudtrail | Release notes
- We recently added CloudWatch Logs support to this module. A regression was introduced that causes a perpetual diff on the cloudtrail resource. This release fixes the perpetual diff.
Published: 9/19/2019 | Modules affected: iam-policies | Release notes
- Add state machine permissions to read_onlypolicy iniam-policiesmodule.
Published: 9/13/2019 | Modules affected: aws-config, iam-groups | Release notes
- A new variable, sns_topic_already_exists, is now required for theaws-configmodule. This addresses an issue with usingsns_topic_arn. If the SNS topic was created in Terraform and the ARN was passed in via interpolation, the module would crash because Terraform can't resolve the count at plan time. We work around this limitation by instead using a boolean value which can be hard coded totrueorfalseand thus does not hit this limitation.
- Updated the IAM role in aws-configto account for a policy change made by AWS.
- Updated the iam-admingroup test to use a unique name to avoid conflicts
Published: 9/10/2019 | Modules affected: iam-policies, iam-groups, custom-iam-group, cloudtrail | Release notes
- Added some new policies to the iam-policiesmodule: an "IAM admin" policy that permitsiam:*(with MFA) but nothing else, and a new "require MFA" policy. It denies access to all actions except MFA self-management unless an MFA device is already enabled. You can attach this policy to users, groups, or roles alongside other policies that do not have an MFA condition of their own to ensure that an MFA device is be required for any of the combined actions to be allowed. For example, the AWS managed policies do not have an MFA condition, but if you attach this alongside them, MFA will be required.
- Updated iam-groupsto optionally create aniam-admingroup that uses the policy mentioned above, and also optionally asupportgroup with access to interact with AWS support (and nothing else).
- Added new custom-iam-groupmodule. This module can create a new IAM group and attach a set of policies by ARN or name. It can also ensure that the entire group requires MFA by attaching the "require MFA" policy mentioned above.
- Updated the cloudtrailmodule to optionally have separate names for the CloudWatch Logs Group and IAM role. Previously, the name of the role was based on the log group name.
Published: 9/17/2019 | Modules affected: s3-cloudfront | Release notes
- The s3-cloudfrontmodule now supports specifying multiple origin groups, which allows you to specify one or more S3 buckets to use as failovers in case the primary one fails. You can specify the failover buckets using the new input variablesfailover_bucketsandfailover_bucket_website_endpoints.
Published: 9/16/2019 | Release notes
- run-pex-as-resource
- run-pex-as-data-source
The run-pex-as-resource and run-pex-as-data-source modules now exposes a variable (enabled) that can be used to conditionally decide whether or not to execute the pex resource. This is helpful when you want to support disabling script execution in your modules.
Published: 9/10/2019 | Release notes
The run-pex-as-resource module now exposes the null_resource triggers and the execution environment variable settings so that you can override them.
Published: 9/11/2019 | Modules affected: vpc-mgmt | Release notes
- The vpc-mgmtmodule now adds aNametag to its NAT Gateway(s) and allows you to specify custom tags via the optionalnat_gateway_custom_tagsinput variable.