Terraform Cloud

Use the Terraform Cloud integration to reach the desired state of the configuration with automation.

Overview

Terraform is an open-source infrastructure as code software tool that provides a consistent CLI workflow to manage hundreds of cloud services. Terraform codifies cloud APIs into declarative configuration files.
This integration will help automate, manage and orchestrate your cloud infrastructure processes with the help of easy-to-create workflows.

Use Cases

The integration between Fylamynt and Terraform Cloud lets you:
  • Plan a terraform module.
  • Apply a Terraform plan created in a workspace.
  • Discard a Terraform plan in a workspace if it has not been applied. Unlocks the workspace.
  • Show the output in a Workspace.
  • Modify Variables in a Workspace

Configure Terraform Cloud in Fylamynt

  • Navigate to Settings > Integrations > Terraform
  • Configure a new integration instance
Details needed to set up Terraform Cloud instance in Fylamynt:
Parameter Name
Description
Required
Organization
The Terraform Cloud organization to be used for actions.
True
Token
A Terraform Cloud API token for a user in this Organization
True
Follow the steps listed below in your Terraform Cloud account and get the desired parameters to enter in Fylamynt.
  • In a separate browser window or tab, Sign into Terraform Cloud
  • Click on User Settings
  • Click on Organizations
  • Copy the organization name into the Organization text field in the Fylamynt UI.
  • In the Terraform session, click on Tokens
  • Click on Create an API token
  • Add a Description
  • Click on Create API token
  • Copy the new token into the Token text field in the Fylamynt UI

Integration Actions

Terraform Apply

Apply a Terraform plan created in a workspace.
Input
Parameter Name
Description
Required
alias
Target account for running this action
True
run_id
Run id from a previous Terraform Plan
True
Output
Parameter Name
Type
Description
apply_result
String
Status of the Apply action
workspace_id
String
The workspace Id in which the action occurred

Terraform Discard

Discard a Terraform plan in a workspace if it has not been applied. Unlocks the workspace. Either run_id or workspace_id should be specified.
Input
Parameter Name
Description
Required
alias
Target account for running this action
True
run_id
Run id from a previous Terraform Plan run
False
workspace_id
Id of locked Workspace
False
Output
Parameter Name
Type
Description
run_id
String
The run id that was discarded. Can be None if the workspace was not locked.

Terraform Plan

Plan a terraform module. This action does not apply the plan automatically.
Input
Parameter Name
Description
Required
workspace_id
Id picked from the list of workspaces available to this organization
True
Output
Parameter Name
Type
Description
run_id
String
The run id for this action.
run_status
String
The status of the run when the action finishes
run_data
String
JSON object containing the data of the plan.

Terraform Show

Show the output in a Workspace.
Input
Parameter Name
Description
Required
workspace_id
Id picked from the list of workspaces available to this organization
True
alias
Target account for running this action
True
bucket
S3 bucket for storing the output
False
Output
Parameter Name
Type
Description
is_truncated
Boolean
True if the output in showhad to be truncated.
bucket
String
The name of the output bucket if provided in the inputs
key
String
The S3 key for the output if a bucket was provided in the inputs. This will have all the output.
show
String
The output (or the last 100 KB if truncated)

Terraform Update Vars

Modify Variables in a Workspace
Input
Parameter Name
Description
Required
workspace_id
Id picked from the list of workspaces available to this organization
True
variables
List of JSON dictionaries for variables set up for this workspace
True
Output
Parameter Name
Type
Description
variables
List of JSON dictionaries.
Variables updated by the user.
Action Example