gruntwork-newsletter

Gruntwork Newsletter, March 2024

Every few months, we send out a newsletter to all Gruntwork customers that describes all the updates we’ve made since the last newsletter…
Gruntwork Newsletter, March 2024
YB
Yevgeniy Brikman
Co-Founder
Published March 15, 2024

Every few months, we send out a newsletter to all Gruntwork customers that describes all the updates we’ve made since the last newsletter and news from the DevOps industry. Note that many of the links below go to private repos in the Gruntwork Infrastructure as Code Library and Reference Architecture that are only accessible to customers.

Hello Grunts,

In the last few months, we added a number of major new features to Terragrunt, including catalog, scaffold, graph, structured logging, and telemetry. We also open sourced Boilerplate, our cross-platform project generator / scaffolding tool and OpenTofu is now Generally Available (GA) with its first stable release!

As always, if you have any questions or need help, email us at support@gruntwork.io!

Gruntwork Updates

Introducing Terragrunt ‘catalog’ and ‘scaffold’

We’ve added two powerful new features to Terragrunt:

  1. terragrunt catalog: browse your module catalog.
  2. terragrunt scaffold: scaffold out files for configuring a module for deployment.

We believe these two features will help you both (a) standardize how you manage and deploy your modules and (b) make it easier and faster for developers to configure modules for deployment.

Check out the announcement blog post for all the details.

Other Terragrunt improvements: graph, structured logging, telemetry

In addition to the terragrunt catalog and terragrunt scaffold features mentioned above, we’ve added three other major new features to Terragrunt:

  1. Terragrunt graph: Run a command against the graph of dependencies for the module in the current working directory.
  2. Structured logging: Output all logs in JSON format, to make it easier to understand the logs and programmatically parse them.
  3. Telemetry: Output traces and metrics in OpenTelemetry format.

Check out the announcement blog post for the full details.

Introducing Boilerplate

We’ve open sourced a cross-platform project generator / scaffolding tool called Boilerplate, licensed under MPL 2.0: https://github.com/gruntwork-io/boilerplate.

We’ve used Boilerplate for years at Gruntwork to generate oft-repeated code, such as Terraform/OpenTofu projects, the Reference Architecture, and vending new AWS accounts and GitHub repos as part of DevOps Foundations. Boilerplate is similar to other project generator tools such as cookiecutter, yeoman, and copier, but with the advantages of being cross-platform (a single standalone binary), with support for typed input variables, validations, scripting, template composition, interactive and non-interactive modes, and more.

Check out the announcement blog post for the full details.

OpenTofu is now Generally Available (GA)!

OpenTofu, a community-driven, Linux-foundation managed, open source fork of Terraform, had its first stable release in January, and is now Generally Available (GA)! What this means is that OpenTofu is now production-ready, and you can start migrating your workloads to it. It’s a drop-in replacement for Terraform, so you should be able to migrate to it easily by following our migration guide.

Check out the announcement blog post for more details.

All other Gruntwork releases and updates

You can find details on every single release and update we do in the Gruntwork Releases page of our docs site. And now, you can use Patcher to update your dependencies automatically! If you’re a Gruntwork customer and don’t have access to Patcher yet, please email support@gruntwork.io. If you’re not a Gruntwork customer, please contact our sales team.

Here are the dedicated pages for new Gruntwork releases since the last newsletter:

DevOps News

EKS now supports Kubernetes 1.29

Amazon has announced that EKS now supports Kubernetes 1.29:

Some things to note in this release are the removal of v1beta2 flow control API group and the general availability of ReadWriteOncePods access mode for PersistentVolumes. If you create a pod that uses a PresistentVolumeClaim(PVC) using ReadWriteOncePod access mode, only that pod from your whole cluster can read or write to the PVC. Additionally, to reduce the potential attack surface, the release includes the LegacyServiceAccountTokenCleanUp feature that will label legacy auto-generated secret-based tokens as invalid and automatically removes them if not used for one year after being marked as invalid.

We are working on updating our EKS modules to work with this release. Follow this PR for progress.

ECS now supports managed instance draining

Amazon has announced that ECS now supports managed instance draining:

A new capability that facilitates graceful shutdown of workloads deployed on Amazon Elastic Compute Cloud (Amazon EC2) instances by safely stopping and rescheduling workloads to other, non-terminating instances. This capability enables customers to simplify infrastructure maintenance workflows, such as rolling out a new Amazon Machine Image (AMI) version, without needing to build custom solutions to gracefully shutdown instances without disrupting their workloads.

We are working on updating our ECS modules to support managed instance draining. Follow this PR for progress.