Docker CLI
Learn how to add and configure the \"Docker CLI\" action in your Buddy pipeline
POST参数
名称 | 类型 | 描述 |
---|---|---|
action 必填 | String | The ID of the action. |
type 必填 | String | The type of the action. Must be set to NATIVE_BUILD_DOCKER_CLI . |
working_directory 必填 | String | The directory in which the pipeline filesystem will be mounted. |
commands 必填 | String[] | The commands that will be executed. |
execute_every_command | Boolean | If set to true all commands will be executed regardless of the result of the previous command. |
sync_paths | SyncPath[] | Define file paths that should be copied before (PIPELINE_TO_VM ) and after the execution (VM_TO_PIPELINE ). |
docker_layer_caching | Boolean | Enables or disables Docker layer caching. |
docker_layer_caching_scope | Boolean | Required if docker_layer_caching is set to true . Defines the caching scope. Available values: WORKSPACE , PROJECT , PIPELINE , ACTION . |
docker_layer_caching_tag | String | Defines 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"
}
}