This post is a companion to the Terraform announcements made during the HashiConf 2018 Opening Keynote.
We're excited to announce that HashiCorp Terraform collaboration features are coming to all users. Historically, collaboration features have been available to Enterprise customers only. Going forward collaboration features will be available for free to practitioners and small teams, at an affordable price to businesses, and Terraform Enterprise will remain our world-class platform for organizations adopting Terraform at scale.
This post will explain the various collaboration features we're bringing to Terraform in the near future.
|Free tier for practitioners and small teams adopting infrastructure as code||Affordable pricing for businesses using Terraform to manage all cloud infrastructure||World-class platform for organizations adopting Terraform at scale|
» The Importance of Terraform Collaboration
Terraform is a powerful tool when wielded by an individual, but when groups of people collaborate using Terraform, they can achieve real, transformational benefits from infrastructure as code.
We have always known that collaboration is essential for delivering infrastructure with Terraform. This is why we built world-class collaboration functionality into Terraform Enterprise, which became generally available in 2017. In partnership with our customers, we have been making Terraform Enterprise better with each release.
We've also been working closely with Terraform's open source user community, learning from our users working with Terraform in organizations large and small. Our original thesis was that generalized tooling for code collaboration (e.g. version control systems and CI systems) would be enough for basic collaboration on Terraform configuration. We now know that generalized tooling is not enough for effective collaboration on Terraform. There is a gap between the problems solved by the Terraform CLI and Terraform Enterprise.
For evidence of this gap, we need to look no further than the community trying to fill it. Several projects and products have shown up over the past year to provide supportive tooling for Terraform collaboration. It's clear to us now that collaboration is key for the whole Terraform community — individual practitioners, teams, and enterprises.
With the above as context, we are pleased to make three announcements today.
» Free Collaboration Features, Starting With Free Remote State Storage
There are three core elements to the Terraform collaboration experience:
- State management: Store, secure, lock, and version Terraform state files
- Centralized plans and applies: Safely run Terraform plans and applies in one location where collaborators can review and make decisions together
- Module registry: Share reusable Terraform modules across a team
Managing a state file is the first collaboration hurdle with Terraform, and we are kicking off our commitment to collaboration for all by providing free remote state storage with:
- No limits on users
- No limits on workspaces
- Encryption provided by HashiCorp Vault
- Per-operation locking
This functionality will begin beta later this year. We invite all Terraform users to sign up for the waitlist to be notified when this and other collaboration functionality become available.
The free and paid offerings will provide different quotas of centralized plans and applies and module registry. We are still working on pricing, but the goal is to make the paid tier accessible to as broad an audience as possible. We are adding users to the free tier slowly and waiting to open the paid tiers to maintain a high-quality Terraform collaboration experience without performance issues. There are a lot of Terraform users in the world and we want to make sure the experience is robust for all. For more information, watch this short video below:
» Remote Plans and Applies for Current Terraform Enterprise customers
Terraform Enterprise has an excellent collaboration workflow, and today we're announcing an improvement to that workflow with Remote Plans and Applies. Users can start runs in Terraform Enterprise with the standard
terraform plan and
terraform apply commands, and can watch the progress of the run without leaving their terminal. These runs execute remotely in Terraform Enterprise; they use variables from the appropriate workspace, enforce any applicable Sentinel policies, and can access Terraform Enterprise's private module registry and remote state inputs. Learn more about Remote Plans and Applies by reading the documentation.
This functionality is being released to current Terraform Enterprise customers today and will be released to users of the free and paid tiers at a later date.
» Atlantis Team Joins HashiCorp
Atlantis is an open source tool designed to help teams collaborate on Terraform. It provides a workflow for reviewing and executing Terraform directly from GitHub pull requests.
Anubhav Mishra and Luke Kysow are the engineers behind Atlantis. Mishra started the project at Hootsuite and has been a developer advocate at HashiCorp for the past year. Luke joined Mishra to help open source the project and has been leading the project for the past nine months.
Over the past few months, we have had many discussions between Mishra and Luke and the folks on the Terraform team here at HashiCorp. Through these conversations, we have come to understand that we have a shared vision for providing solutions for Terraform collaboration for teams large and small.
Today we are pleased to announce that both Mishra and Luke are on board as HashiCorp employees and we'll be working together to solve Terraform collaboration for everyone. In the near term, nothing will change for Atlantis and its users. Luke will continue to maintain Atlantis, review pull requests, triage issues, and write code.
We are still working out the details of how Atlantis will fit into the Terraform portfolio, but whatever direction we take, we’re committed to keeping Atlantis functionality free and open source.
You can read more about what this means for Atlantis in Luke's announcement to the Atlantis community.
The announcements we shared today represent the beginning of our long-term commitment to providing Terraform collaboration for everyone. This starts with offering free remote state storage and will expand into free and affordable tiers which include remote runs, variable management, VCS integration, and more. Terraform Enterprise continues to be our world-class platform for managing Terraform at scale.
Learn more about: