跳到主要内容

Docker CLI

Learn how to add and configure the \"Docker CLI\" action in your Buddy pipeline

POST参数

名称类型描述
action
必填
StringThe ID of the action.
type
必填
StringThe type of the action. Must be set to NATIVE_BUILD_DOCKER_CLI.
working_directory
必填
StringThe directory in which the pipeline filesystem will be mounted.
commands
必填
String[]The commands that will be executed.
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).
docker_layer_cachingBooleanEnables or disables Docker layer caching.
docker_layer_caching_scopeBooleanRequired if docker_layer_caching is set to true. Defines the caching scope. Available values: WORKSPACE, PROJECT, PIPELINE, ACTION.
docker_layer_caching_tagStringDefines the name of the tag assigned to the cached layer.

Sample Request

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

JSON

{
"name": "Execute: docker --version",
"type": "NATIVE_BUILD_DOCKER_CLI",
"trigger_time": "ON_EVERY_EXECUTION",
"working_directory": "/home/ubuntu/build",
"commands": [
"docker --version"
],
"execute_every_command": true,
"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": ""
}
],
"docker_layer_caching": true,
"docker_layer_caching_scope": "PROJECT",
"docker_layer_caching_tag": "backend_build"
}

示例响应

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": "Execute: docker --version",
"type": "NATIVE_BUILD_DOCKER_CLI",
"trigger_time": "ON_EVERY_EXECUTION",
"working_directory": "/home/ubuntu/build",
"commands": [
"docker --version"
],
"execute_every_command": true,
"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": ""
}
],
"docker_layer_caching": true,
"docker_layer_caching_scope": "PROJECT",
"docker_layer_caching_tag": "backend_build",
"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"
}
}