跳到主要内容

Linux

Learn how to add and configure the "Linux" action in your Buddy pipeline

POST参数

名称类型描述
action
必填
StringThe ID of the action.
type
必填
StringThe type of the action. Must be set to NATIVE_BUILD_LINUX.
working_directory
必填
StringThe directory in which the pipeline filesystem will be mounted.
commands
必填
String[]The commands that will be executed.
distribution
必填
StringDefines the image used to create the VM. Use UBUNTU_20_04 for the default image, AMI for a custom AMI.
imageStringRequired if distribution is set to AMI. Defines the AMI ID of the image. Ohio-region images only. The image must have rsync installed.
userStringRequired if distribution is set to AMI. The name of the user in the custom image.
portStringRequired if distribution is set to AMI. The port used for SSH in the custom image.
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).

示例

请求

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",
"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": ""
}
]
}

示例响应

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",
"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"
}
}