Build Docker Image
POST Parameters
Name | Type | Description |
---|---|---|
name Required | String | The name of the action. |
type Required | String | The type of the action. Should be set to DOCKERFILE . |
dockerfile_path Required | String | The path to the desired Dockerfile in the repository. Default is DOCKERFILE . |
context_path | String | The docker build image context path. |
docker_image_tag | String | The tag of the Docker image. |
login | String | The username required to connect to the server. Required for delivering the Dockerfile to a private registry. |
password | String | The password required to connect to the server. Required for delivering the Dockerfile to a private registry. |
integration | Integration | The integration. Required for delivering the Dockerfile to the Amazon ECR, Google GCR and Docker Hub. |
region | String | The name of the Amazon S3 region. Required for delivering the Dockerfile to the Amazon ECR. The full list of regions is available here. |
registry | String | The url to GCR. Can be one of gcr.io, us.gcr.io, eu.gcr.io or asia.gcr.io. Required for Google GCR. |
repository | String | The location of the Docker repository. |
build_args | String[] | The arguments used when building the image from the Dockerfile. |
insecure_registry | Boolean | If set to true , ignore SSL errors upon connecting to the Docker registry. |
do_not_prune_images | Boolean | If set to true , dangling images will not be pruned after the build. |
buildkit | Boolean | The Docker BuildKit will be activated while invoking the docker build command. By default, it is set to true . |
secrets | [DockerBuildSecret[]](/docs/api/pipelines/create-manage-actions/add-action/build-docker-image#dockerbuildsecret-schema) | The list of secrets to be sent using the --secret parameter. |
provenance | String | Refers to the --provenance switch of the Docker build. Available values: NONE , MIN , MAX . The default value is NONE . |
cache_mode BETA | String | Available if the cache_scope in the pipeline where this action is located, is set to WORKSPACE or PROJECT . Defines the Docker cache mode. Available values are MIN or MAX . By default, it is set to MIN . |
Example
Request
POST https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions
JSON
{
"name": "Build dockerfile",
"type": "DOCKERFILE",
"trigger_time": "ON_EVERY_EXECUTION",
"docker_image_tag": "14.06",
"region": "us-east-1",
"integration": {
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"dockerfile_path": "dir/Dockerfile",
"repository": "MyDockerRepo",
"insecure_registry": true,
"do_not_prune_images": true,
"buildkit": true,
"secrets": [
{
"id": "someSecret",
"value": "path_to_secret",
"type": "FILE"
},
{
"id": "mysecret",
"value": "MY_ENV_VAR_KEY",
"type": "ENV"
}
],
"build_args": [
"key=value"
]
}
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 dockerfile",
"type": "DOCKERFILE",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"trigger_time": "ON_EVERY_EXECUTION",
"docker_image_tag": "14.06",
"region": "us-east-1",
"integration": {
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"dockerfile_path": "dir/Dockerfile",
"repository": "MyDockerRepo",
"insecure_registry": true,
"do_not_prune_images": true,
"buildkit": true,
"secrets": [
{
"id": "someSecret",
"value": "path_to_secret",
"type": "FILE"
},
{
"id": "mysecret",
"value": "MY_ENV_VAR_KEY",
"type": "ENV"
}
],
"build_args": [
"key=value"
],
"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"
}
}
DockerBuildSecret Schema
Properties
Name | Type | Description |
---|---|---|
id | String | The identifier to pass into the docker buildx --secret . This identifier is associated with the RUN --mount identifier to use in the Dockerfile. |
value | String | If type=FILE, it is a path to the file in the filesystem. If type=ENV, it is the name of the variable whose value will be passed to the secret. |
type | String | The type of the secret. Set FILE if you want to use a file from the filesystem. If you want it to be a variable value, choose ENV . |
Last modified on December 14, 2023