In this tutorial, you will learn about how Terraform Cloud enables collaboration. Then, you will sign up for a Terraform Cloud account and create an organization.
»What is Terraform Cloud?
Terraform Cloud is an application that manages Terraform runs in a consistent and reliable environment instead of on your local machine. It stores shared state and secret data, and connects to version control systems so that you and your team can work on infrastructure as code within your usual code workflow. It also has a private registry for sharing Terraform modules.
Paid features include access controls for approving changes to infrastructure, detailed policy controls for governing the contents of Terraform configurations, and more.
For more details on the Terraform Cloud tiers, visit the feature overview and pricing page.
»The VCS-driven workflow
A workspace is the basic unit of Terraform Cloud infrastructure configuration. A workspace contains Terraform configuration files, environment variables, Terraform variables, and state files — everything Terraform needs to manage a given collection of infrastructure. To manage infrastructure with Terraform Cloud you would:
Write configuration - Create or update Terraform configuration, which represents your infrastructure in HashiCorp Configuration Language (HCL)
Version control - Check your configuration files into a version control system (VCS) as the source of truth for your configuration
Select workspace - Connect the VCS repo containing your configuration to Terraform Cloud and select or create a workspace
Configure variables - Define your workspace's Terraform variables and environment variables. These are any values you want your configuration's end users to customize, and credentials or other sensitive values.
Plan & apply - Execute Terraform Cloud runs (plans and applies) to manage your infrastructure. You can trigger these via the Terraform Cloud UI or by opening pull requests in your VCS.
Since Terraform Cloud supports multiple users, you can collaborate with your team on each of these steps. For instance, each time you plan a new change, your team can see and approve the plan before it is applied.
Tip: You can also use Terraform Cloud as a remote state backend for the CLI using local configuration and variables. Learn about this workflow in our AWS, Azure, and GCP Get Started tutorials.
»Create an account
Visit https://app.terraform.io/signup/account and follow the prompts to create a free Terraform Cloud account.
When you sign up, you'll receive an email asking you to confirm your email address. Confirm your email address before moving on.
»Create an organization
After you create your account, the Terraform Cloud Web UI will prompt you to create a new organization. Your organization is free, and the members you add will be able to collaborate on your workspaces and share private modules.
Enter an organization name and email address. You can use the same email address that you used for your account.
Note: If you want to join an existing organization, give the organization's administrator the email address you used to create an account. They will be able to send you an invite.
»Next Steps
In this tutorial, you created a Terraform Cloud account and organization. For more information about organizations and their relationship to workspaces, teams, and users, refer to the Organizations documentation.
Now that you've created an account and organization, you're ready to create a workspace and start managing infrastructure with Terraform Cloud.