Gruntwork release 2017-01
Guides / Update Guides / Releases / 2017-01
This page is lists all the updates to the Gruntwork Infrastructure as Code
Library that were released in 2017-01. For instructions
on how to use these updates in your code, check out the updating
documentation.
Here are the repos that were updated:
Published: 1/18/2017 | Release notes
- Boilerplate will now correctly run
before
hooks before processing any dependencies.
Published: 1/17/2017 | Release notes
- Boilerplate now allows you to define
hooks
in boilerplate.yml
that can be used to execute arbitrary shell commands.
Published: 1/14/2017 | Release notes
- Boilerplate now has
templateFolder
and outputFolder
helpers which return the paths of the --template-folder
and --output-folder
settings. These are useful for building relative filepaths.
Published: 1/11/2017 | Release notes
- The
shell
helper will now properly display the stderr for the command you are executing
Published: 1/11/2017 | Release notes
- When you call the
shell CMD
helper from a file X, CMD
will be executed in the same folder as X. This makes it easier to use relative paths.
Published: 1/10/2017 | Release notes
- Boilerplate now supports a
shell
helper that can execute arbitrary shell commands and render their stdout into the template.
Published: 1/19/2017 | Release notes
- BREAKING CHANGE: AWS made a backwards-incompatible change to their API where, if the snapshot_retention_limit property of the
aws_elasticache_replication_group
Terraform resource is set to 0
, you must not pass the snapshot_window property. Previously, the snapshot_window property was simply ignored if not needed.
Note that if you update to this new version of the redis module, it will delete your original ElastiCache cluster and replace it with a new one. Therefore, it's essential that you have all your data backed up and can take a downtime before you do the upgrade.
Alternatively, it's possible to update without downtime by using terraform state
commands. If you'd like assistance with this contact support@gruntwork.io.
Published: 1/27/2017 | Release notes
- The
scheduled-lambda-job
module now exposes a source_code_hash
parameter that works nicely with the archive_file data source in Terraform to automatically zip up your lambda jobs.
Published: 1/26/2017 | Release notes
- You can now pass a map of environment variables to the scheduled-lambda-job module using the
environment_variables
parameter.
Published: 1/7/2017 | Release notes
- The
build-go-binaries
script now supports a --parallelism
flag which defaults to 32.
Published: 1/25/2017 | Release notes
- ENHANCEMENT: Per #27, the
ecs-cluster
module now accepts the optional parameters var.alb_security_group_ids
and var.num_alb_security_group_ids
.
Whereas previously, an ALB was connected to an ECS Cluster by passing the ECS Cluster's Security Group ID to the alb
module (located in the the Load Balancer Package), now the alb
module is unaware of an ECS Cluster or Auto Scaling Group connected to it, and that responsibility has been shifted to the ecs-cluster
module.
Published: 1/19/2017 | Release notes
- BREAKING CHANGE: The module
ecs-service-with-alb
replaces the variable previously named ecs_task_definition
with a variable named ecs_task_container_definitions
to more accurately reflect what this variable actually represents. This is the sole breaking change in this release.
Published: 1/19/2017 | Release notes
- ENHANCEMENT: The
ecs-service-with-alb
module now outputs target_group_name
.
Published: 1/17/2017 | Release notes
BUG FIX: Previously, the ecs-service-with-alb
may not have correctly matched the Listener Rule configurations specified in var.alb_listener_rule_configs
to the ALB Listener ARNs var.alb_listener_arns
. This release fixes that issue and adds a test to validate it.
Note that we are seeing intermittent test failures with the ALB that indicate a small (e.g. 1 - 2 seconds) period of downtime takes place when deploying a new version of a Docker image as part of an ECS Service. We previously reported these issues to AWS and they issued several fixes as a result. So we will remain on watch for this important nuance of using the ALB.
Published: 1/13/2017 | Release notes
- NEW MODULE:
ecs-service-with-alb
is now available! To use it, first create your ECS Cluster with the ecs-cluster
module. Then create an ALB to be shared among potentially many ECS Services using the alb module (contained in a separate repo because the ALB can also be used by an Auto Scaling Group. Then create an instance of the ecs-service-with-alb
.
Published: 1/30/2017 | Release notes
- "DISRUPTIVE" CHANGE: Previously, the
alb
module was rather opinionated about how it would name the ALB. It assumed you wanted the ALB name to be of the form <var.alb_name>-<var.environment_name>
. But this proved to be unnecessarily opinionated, so this update changes the ALB name to be exactly the value of the var.alb_name
.
Note that the alb
module API did not change and this is therefore not a "breaking" change, however Terraform will attempt to destroy and re-create your ALB, making this a "disruptive" change. To avoid such disruption, consider using terraform state
commands. Due to the relative newsness (1 - 2 weeks), only a handful of Gruntwork customers are currently using the alb
module. Therefore, we did not create documentation on migrating from the previous ALB version.
As always, contact us at support@gruntwork.io if you'd like help migrating this!
Published: 1/25/2017 | Release notes
- BREAKING CHANGE: Previously the ALB depended on a previously existing ECS Cluster or Auto Scaling Group by exposing the parameters
var.ecs_cluster_security_group_ids
and var.auto_scaling_group_security_group_ids
. But this dependency was problematic for reasons explained in #5. Now, the ALB depends on no external resources, and any resource like an ECS Cluster that wants to use the ALB can implement its own "hook" into the ALB by reading the new output alb_security_group_id
.
Published: 1/13/2017 | Release notes
Published: 1/19/2017 | Release notes
- NEW: A new module
alb-alarms
has been added. This module adds a set of CloudWatch alarms on an Application Load Balancer (ALB).
- NEW: A new module
alb-target-group-alarms
has been added. This module adds a set of CloudWatch alarms on an ALB Target Group. This group is the preferred way to monitor the resources created by the Gruntwork Module ecs-service-with-alb.
- NEW: A new stub
ecs-service-with-alb-alarms
was added to direct users seeking CloudWatch alarms for the Gruntwork Module ecs-service-with-alb
to the alb-target-group-alarms
module.
Published: 1/4/2017 | Release notes
- ENHANCEMENT:
module-server
now outputs private_ip
so users can get the private IP address of the EC2 Instance.
Published: 1/26/2017 | Release notes
- The
vpc-app-network-acls
module now allows you to choose if you want to allow access to your VPC from the mgmt VPC using a new input variable called allow_access_from_mgmt_vpc
. It defaults to true for backwards compatibility, but if you set it to false, you can now omit the mgmt_vpc_cidr_block
parameter.