Workspaces

Introduction

A workspace is where all objects related to Terraform managed resources are stored and managed. This is where you can find state, update the Terraform version, manage variables, see run history and much more. Workspaces can be as simple as a single resource or can be a complex monolithic configuration, it all depends on your use case and the directories that the workspace is linked to. A workspace can be integrated with your existing workflow whether it is a GitOps approach through a VCS provider, using the native Terraform CLI, or deploying modules directly in the UI. All workspace types follow the same pipeline:

Plan, which allows users to view the planned creation, update, or destruction of resources through the standard console output or detailed plan view. The details plan will alert users of destructive changes and makes it easier to search the plan when there are many resources affected. It is also the section to check who approved an apply and comments associated with the approval.

2640

Cost Estimate, which will show you the estimated cost for the resources that are being created. This information can be used for writing a policy to check cost.

2640

Policy Check, which is used to check the Terraform plan JSON output against Open Policy Agent policies. This step can be used to enforce you company standards.

2680

Apply, which will actually create, update, or destroy the resources based on the Terraform configuration file.

2674

Below you will find the various types of workspaces. They each have a few unique settings, but all of them share the settings listed in workspace settings.