Terraform CLI

  • POST
  • /workspaces
  • /:domain
  • /projects
  • /:project_name
  • /pipelines
  • /:pipeline_id
  • /actions

Request

URL PARAMETERS
domainrequired string
The workspace domain.
pipeline_idrequired integer
The numerical ID of the desired pipeline.
project_namerequired string
The name ID of the project.
POST PARAMETERS
actionrequired string
The name of the action.
typerequired string
The type of the action. Should be set to TERRAFORM.
execute_commandsrequired string
The commands that will be executed.
integration_hashstring
The ID of the Google or Amazon integration.
shellstring
The name of the shell that will be used to execute commands. Can be SH.
setup_commandsstring
The command that will be executed only on the first run.
versionrequired string
The version of the Terraform CLI.

Last modified on Sep 27, 2024

Example:

curl -X POST "https://api.buddy.works/workspaces/:domain/projects/:project_name/pipelines/:pipeline_id/actions" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Run Terraform commands",
  "type": "TERRAFORM",
  "trigger_time": "ON_EVERY_EXECUTION",
  "setup_commands": [
    "apt-get update && apt-get -y install git"
  ],
  "execute_commands": [
    "terraform init -input=false",
    "terraform plan -input=false",
    "#terraform apply -auto-approve -input=false"
  ],
  "shell": "SH",
  "integration": {
    "hash_id": "5ddb7c180fb38be67bd78a88a"
  },
  "version": "latest"
}'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions/2", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/2/edit", "id": 2, "name": "Run Terraform commands", "type": "TERRAFORM", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "setup_commands": [ "apt-get update && apt-get -y install git" ], "execute_commands": [ "terraform init -input=false", "terraform plan -input=false", "#terraform apply -auto-approve -input=false" ], "shell": "SH", "integration": { "hash_id": "5ddb7c180fb38be67bd78a88a" }, "version": "latest", "pipeline": { "url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2", "html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/2", "id": 2, "name": "Live mirror", "on": "CLICK", "refs": [ "refs/heads/master" ], "last_execution_status": "SUCCESSFUL", "last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08" } }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999