Terraform Cloud Integration
Compute Software integrates with Terraform Cloud to map the resources in your Terraform Workspace with the Compute Software platform.
A new filter category will appear to allow you to filter by your Terraform Workspace name. The filter category is available in all “Optimizations” tabs.
All AWS resources the Compute Software platform supports that are managed by a Terraform Cloud Workspace will include a new section in the resource drawer under “Additional Information.” The section is titled “Terraform” and includes the Organization ID, Workspace the resource resides in, and a link to the Terraform Cloud console for the Workspace.
Navigate to the Terraform Cloud console Teams page: Organization settings > Teams > (desired team). Ensure the team has access to “Manage Workspaces”.
Follow Terraform’s documentation on creating a Team API token. After creating the token, copy the value for use in the Compute Software platform.
Navigate to the Compute Software Terraform Cloud integration page and click “Add New Integration.
In the modal, input an integration name and paste the Terraform Team API token previously created.
Click “Add Integration”
After creating your first Terraform Cloud integration, the platform will begin syncing all managed resources across all Workspaces the the API token has access to. The sync occurs once per hour.
The sync process accesses provider resource information by ingesting the current Terraform state file for each Workspace and mapping it to Compute Software platform resources. The Terraform state file resides in process memory for a short period while the mapping is completed. Compute Software does not persist or store the state file in any way.
- List Organizations: This endpoint lists organizations in scope.
- List Workspaces: This endpoint lists workspaces in the organization.
- Fetch the Current State Version for a Workspace: Fetches the current state version for the given workspace. This state version will be the input state when running terraform operations.