Build action using image from private registry

  • POST
  • /workspaces
  • /:domain
  • /projects
  • /:project_name
  • /pipelines
  • /:pipeline_id
  • /actions

Request

URL PARAMETERS
domainrequired string
The workspace domain.
pipeline_idrequired integer
The numerical ID of the desired pipeline.
project_namerequired string
The name ID of the project.
POST PARAMETERS
namerequired string
The name of the action.
typerequired string
The type of the action. Should be set to BUILD.
docker_image_namerequired string
The name of the Docker image.
docker_image_tagrequired string
The tag of the Docker image.
execute_commandsrequired string[]
The commands that will be executed.
loginrequired string
The username required to connect to the Docker registry.
passwordrequired string
The password required to connect to the Docker registry.
registryrequired string
The url to the Docker registry.
run_as_userstring
All build commands are run as the default user defined in the selected Docker image. Can be set to another username (on the condition that this user exists in the selected image).
volume_mappingsstring[]
The path preceding the colon is the filesystem path (the folder from the filesystem to be mounted in the container). The path after the colon is the container path (the path in the container, where this filesystem will be located).
cached_dirsstring[]
The dependencies & directories to be cached and available to every execution in this pipeline.
setup_commandsstring[]
The command that will be executed only on the first run.
servicesService[]
The containers with the services that will be attached to this environment. Available types: MYSQL, MONGO_DB, MARIADB, POSTGRE_SQL, REDIS, MEMCACHED, ELASTICSEARCH.
execute_every_commandboolean
If set to true all commands will be executed regardless of the result of the previous command.

Last modified on Oct 7, 2024

Example:

curl -X POST "https://api.buddy.works/workspaces/:domain/projects/:project_name/pipelines/:pipeline_id/actions" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "Content-Type: application/json" \
-d '{
  "name": "Build application",
  "type": "BUILD",
  "trigger_time": "ON_EVERY_EXECUTION",
  "docker_image_name": "buddyworks/private_image",
  "docker_image_tag": "latest",
  "volume_mappings": [
    "/:/buddy/mount/directory"
  ],
  "execute_commands": [
    "ls -al > ls.log"
  ],
  "login": "buddyworks",
  "password": "top_secret_password",
  "registry": "my.registry.com"
}'
EXAMPLE RESPONSE
{ "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": "BUILD", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "docker_image_name": "buddyworks/private_image", "docker_image_tag": "latest", "volume_mappings": [ "/:/buddy/mount/directory" ], "execute_commands": [ "ls -al > ls.log" ], "login": "buddyworks", "registry": "my.registry.com", "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", "refs": [ "refs/heads/master" ], "last_execution_status": "SUCCESSFUL", "last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08" } }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999