Speed Up Salesforce App Delivery on Mar 23rd, 10am PST / 1pm ET Register Now
Terraform
Terraform
Terraform
CI/CD Stage
Build
Product Type
Cloud
Product
Terraform
Company
HashiCorp
Community
Founder(s)
Mitchell Hashimoto
Founded
2014
Product Links
Documentation
Release Notes
Community

Terraform

Terraform allows infrastructure to be expressed as code in a simple, human-readable language. Use Infrastructure as Code to provision and manage any cloud, infrastructure, or service.

Terraform Cloud

Write Infrastructure as Code

Terraform users define infrastructure in a simple, human-readable configuration language called HCL (HashiCorp Configuration Language). Users can write unique HCL configuration files or borrow existing templates from the public module registry.

Manage Configuration Files in VCS

Most users will store their configuration files in a version control system (VCS) repository and connect that repository to a Terraform Cloud workspace. With that connection in place, users can borrow best practices from software engineering to version and iterate on infrastructure as code, using VCS and Terraform Cloud as a delivery pipeline for infrastructure.

Automate Provisioning

When you push changes to a connected VCS repository, Terraform Cloud will automatically trigger a plan in any workspace connected to that repository. This plan can be reviewed for safety and accuracy in the Terraform UI, then it can be applied to provision the specified infrastructure.

CLI

Terraform allows infrastructure to be expressed as code in a simple, human readable language called HCL (HashiCorp Configuration Language). Terraform CLI reads configuration files and provides an execution plan of changes, which can be reviewed for safety and then applied and provisioned. Extensible providers allow Terraform to manage a broad range of resources, including hardware, IaaS, PaaS, and SaaS services.

  • Infrastructure as Code
  • 200+ available providers
  • Provision any infrastructure

Deliver infrastructure as code with Terraform

Terraform Cloud

Write Infrastructure as Code

Terraform users define infrastructure in a simple, human-readable configuration language called HCL (HashiCorp Configuration Language). Users can write unique HCL configuration files or borrow existing templates from the public module registry.

Manage Configuration Files in VCS

Most users will store their configuration files in a version control system (VCS) repository and connect that repository to a Terraform Cloud workspace. With that connection in place, users can borrow best practices from software engineering to version and iterate on infrastructure as code, using VCS and Terraform Cloud as a delivery pipeline for infrastructure.

Automate Provisioning

When you push changes to a connected VCS repository, Terraform Cloud will automatically trigger a plan in any workspace connected to that repository. This plan can be reviewed for safety and accuracy in the Terraform UI, then it can be applied to provision the specified infrastructure.

Write declarative configuration files

  • Collaborate and share configurations
  • Evolve and version your infrastructure
  • Automate provisioning

Define infrastructure as code to manage the full lifecycle — create new resources, manage existing ones, and destroy those no longer needed.

Plan and predict changes

  • Clearly mapped resource dependencies
  • Separation of plan and apply
  • Consistent, repeatable workflow

Terraform provides an elegant user experience for operators to safely and predictably make changes to infrastructure.

Create reproducible infrastructure

  • Reproducible production, staging, and development environments
  • Shared modules for common infrastructure patterns
  • Combine multiple providers consistently

Terraform makes it easy to re-use configurations for similar infrastructure, helping you avoid mistakes and save time.

Enhanced Workflow for Teams with Terraform Cloud

Terraform Cloud is a free to use SaaS application that provides the best workflow for writing and building infrastructure as code with Terraform.

Share infrastructure as code

Empower your team to rapidly review, comment, and iterate on Infrastructure as Code.

  • State management (storage, viewing, history, and locking)
  • Web UI for viewing and approving Terraform runs
  • Collaborative Runs
  • Private module registry

Automate consistent workflows

Create a pipeline for provisioning Infrastructure as Code

  • VCS integration (Azure DevOps, Bitbucket, GitHub, and GitLab)
  • Enable GitOps workflow
  • Remote operations — perform Terraform runs in a consistent, immutable environment
  • Notifications for run events (via Slack or webhooks)
  • Full HTTP API for integrating with other tools and services