July 2022: VS Code Extension, Custom Project Names, And 7,000 GitHub Stars!
We released the Infracost VS Code extension, which was so popular that it hit the front page of Hacker News. That pushed Infracost to over 7,000 GitHub stars ⭐
We also released v0.10.6 that lets you customize project names, and exclude paths when running with large repos.
VS Code extension
The Infracost VS Code extension shows cost estimates for Terraform right in your editor. You can shift cloud costs all the way left and get immediate feedback as you develop infra-as-code.
This helps with a few use-cases:
- Compare configs, instance types, regions etc: copy/paste a code block, make changes and compare them.
- Quick cost estimate: write a code block and get a cost estimate without having to use AWS, Google or Azure cost calculators, or read the long/complicated pricing web pages.
- Catch costly typos: if you accidentally type 22 instead of 2 as the instance count, or 1000GB volume size instead of 100, the cost estimate will immediately pick that up and let you know.
The extension got a lot of love from the community. Get started here: Infracost VS Code Extension
Customize project names
Infracost auto-generates project names based on the user-provided path or git repo name. The name appears in the CLI output and pull request comments. With this release, you can now define your own custom project name.
The main use-case is when a path such as /tmp/plan.json
is used, the name can become long and hard to understand. This feature lets you set the name to something more understandable.
The infracost breakdown
and diff
commands now support a new --project-name
flag that enables this:
Exclude paths
When using Infracost in a multi-project environment or with Terragrunt, where you want to exclude paths that are in a broken state, you can use the infracost breakdown
and diff
commands with the --exclude-path
flag to ignore directories.
Terragrunt support
Thanks to the Terragrunt user community for working with us to fix a number of issues with parsing HCL:
- Resolved several issues when evaluating Terragrunt dependency blocks.
- Fixed an issue where nested module blocks in HCL that used inputs from module outputs received a nil value.
- Set env vars on Terragrunt run options, which enables
get_env
function to work correctly.
If you’re still having issues after upgrading, try our workarounds.
JSON format updates
We added git and version control metadata to the Infracost JSON output. This will be used by Infracost Cloud to so team leads and FinOps get visibility across all changes, and see pull requests that increase/decrease costs the most. Email hello@infracost.io for early access.
New resources
We added support for AWSGlobalAccelerator
and reserved instances for ElastiCache. If you’d like to contribute code to Infracost, adding resources is a good place to start.
Community content
There are now over 500 people in our community Slack and we merged over 50 pull requests in June! Many thanks to @carmeloriolo and @dgokcin for your recent contributions.
Shout-out to the following people for sharing their Infracost knowledge with the rest of the community:
- Matan Tal & Noam Amrani gave a talk about Infracost at Israel’s largest tech conference, the Sela Developer Practice. Also thanks to Natali Cutic for testing early versions of the Infracost Azure DevOps integration.
- Nick Wilkinson: video demo of using Infracost with Azure.
- Dwi Fahni Denni: talk featuring Infracost’s GitHub Action integration
- TheTestLabs: Avoid Unexpected Cloud Costs With Infracost
- Torivar: Starting out with Terraform pre-commit
- Terraform-Best-Practices.com now includes Infracost.
Community call
👉 Join our community call on Thursday 7 July to discuss the above features and see an early preview of Infracost Cloud.