Terraform

Terraform Cloud enables infrastructure automation for provisioning, compliance, and management of any cloud, datacenter, and service.

Integrate the Terraform API with the Bash API

Setup the Terraform API trigger to run a workflow which integrates with the Bash API. Pipedream's integration platform allows you to integrate Terraform and Bash remarkably fast. Free for developers.

Run Bash Code with Bash API on New Run Createe from Terraform API
Terraform + Bash
 
Try it
New Run Createe from the Terraform API

Emit new event when a new run is created in Terraform.

 
Try it
Create Run with the Terraform API

Creates a new run in Terraform. See the documentation

 
Try it
Run Bash Code with the Bash API

Run any Bash in a Pipedream step within your workflow. Refer to the Pipedream Bash docs to learn more.

 
Try it
List Runs with the Terraform API

Retrieves a list of runs in a workspace in Terraform. See the documentation

 
Try it

Overview of Terraform

The Terraform API allows for the automation of infrastructure as code (IaC) management tasks. With Pipedream, you can orchestrate workflows that interact with Terraform to create, update, or destroy infrastructure programmatically. You can trigger workflows with webhooks, schedule them, or run them in response to events from other services. By integrating Terraform with Pipedream, you can streamline your DevOps processes, enforce compliance, and manage infrastructure changes with ease.

Connect Terraform

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    terraform: {
      type: "app",
      app: "terraform",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://app.terraform.io/api/v2/account/details`,
      headers: {
        Authorization: `Bearer ${this.terraform.$auth.api_token}`,
        "Content-Type": `application/vnd.api+json`,
      },
    })
  },
})

Connect Bash

1
2
3
4
5
6
7
# $PIPEDREAM_STEPS file contains data from previous steps
cat $PIPEDREAM_STEPS | jq .trigger.context.id

# Write data to $PIPEDREAM_EXPORTS to return it from the step
# Exports must be written as key=value
echo foo=bar >> $PIPEDREAM_EXPORTS