Linux

POST Parameters

NameTypeDescription
action
Required
StringThe ID of the action.
type
Required
StringThe type of the action. Must be set to NATIVE_BUILD_LINUX.
working_directory
Required
StringThe directory in which the pipeline filesystem will be mounted.
commands
Required
String[]The commands that will be executed.
distribution
Required
StringDefines the image used to create the VM. Use UBUNTU_20_04 for the default image, AMI for a custom AMI.
execute_every_commandBooleanIf set to true all commands will be executed regardless of the result of the previous command.
sync_pathsSyncPath[]Define file paths that should be copied before (PIPELINE_TO_VM) and after the execution (VM_TO_PIPELINE).
vm_from_prev_actionBooleanSet to true if you want the action to use the VM from the previous Linux action.
vm_action_nameStringThe name of the action from which the VM is reused (if vm_from_prev_action is set to true). If not set, the previous one will be used.
amiAmiSet if distribution is set to AMI.

Ami Properties

NameTypeDescription
idStringDefines the AMI ID of the image. Ohio-region images only. The image must have Rsync installed.
userStringThe name of the user in the custom image.
portStringThe port used for SSH in the custom image.

Example

Request

POST https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions

JSON

{
  "name": "Build application",
  "type": "NATIVE_BUILD_LINUX",
  "trigger_time": "ON_EVERY_EXECUTION",
  "working_directory": "/home/ubuntu/build",
  "commands": [
    "ls -al"
  ],
  "distribution": "AMI",
  "ami": 
    {
      "image": "ami-00bf6b81ba0081ada",
      "user": "ubuntu",
      "port": "22",
    },
  "sync_paths": [
    {
      "pipeline_path": "/",
      "vm_path": "/home/ubuntu/build",
      "direction": "PIPELINE_TO_VM",
      "excludes": "/.git"
    },
    {
      "pipeline_path": "/",
      "vm_path": "/home/ubuntu/build",
      "direction": "VM_TO_PIPELINE",
      "excludes": ""
    }
  ]
}

Sample Response

HTTP

Status: 201 Created
X-Rate-Limit-Limit: 1
X-Rate-Limit-Remaining: 999

JSON

{
  "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": "Build application",
  "type": "NATIVE_BUILD_LINUX",
  "trigger_time": "ON_EVERY_EXECUTION",
  "last_execution_status": "INITIAL",
  "working_directory": "/home/ubuntu/build",
  "user": "ubuntu",
  "port": "22",
  "distribution": "AMI",
  "ami": 
    {
      "image": "ami-00bf6b81ba0081ada",
      "user": "ubuntu",
      "port": "22",
    },
  "commands": [
    "ls -al"
  ],
  "image": "ami-00bf6b81ba0081ada",
  "sync_paths": [
    {
      "pipeline_path": "/",
      "vm_path": "/home/ubuntu/build",
      "direction": "PIPELINE_TO_VM",
      "excludes": "/.git"
    },
    {
      "pipeline_path": "/",
      "vm_path": "/home/ubuntu/build",
      "direction": "VM_TO_PIPELINE",
      "excludes": ""
    }
  ],
  "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"
  }
}

Last modified on November 22, 2022

Questions?

Not sure how to configure a pipeline for your process? Reach out on the live-chat or contact support

Get Started

Sign up for free and deploy your project in less than 10 minutes.