Git Push

Git Push (password)

POST Parameters

NameTypeDescription
name
Required
StringThe name of the action.
push_url
Required
StringThe url to the repository.
trigger_time
Required
StringSpecifies when the action should be executed. Can be one of ON_EVERY_EXECUTION, ON_FAILURE or ON_BACK_TO_SUCCESS.
type
Required
StringThe type of the action. Should be set to PUSH.
loginStringThe username required to connect to the server.
passwordStringThe password required to connect to the server.
target_branchStringThe name of the branch in the remote repository.
push_tagsBooleanDefines whether the tags should be pushed to the remote repository or not.
use_custom_gitignoreBooleanWhen set to false the push will ignore paths listed in .gitignore file.
isolatedBooleanWhen set to true, action will push only repository files (without artifacts).
target_branchStringDefines the remote branch to which the push will be performed. If empty, files will be pushed to the same branch.
deployment_excludesString[]The paths and/or files that will be left out during the push. Only works when use_custom_gitignore is set to true.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.
without_forceBooleanDefines whether the --force flag should be used when invoking the git push command or not.
commentStringOptional custom git commit message.
after_action_idIntegerThe numerical ID of the action, after which this action should be added.
trigger_conditionStringDefines when the build action should be run. Can be one of ALWAYS, ON_CHANGE, ON_CHANGE_AT_PATH, VAR_IS, VAR_IS_NOT or VAR_CONTAINS or VAR_NOT_CONTAINS.

Example

Request

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

JSON

{
"name": "Push to Your Repo",
"type": "PUSH",
"trigger_time": "ON_EVERY_EXECUTION",
"trigger_condition": "ALWAYS",
"push_url": "https://app.buddy.works/buddy/repo",
"login": "api_tests_user",
"password": "api_tests_password",
"target_branch": "stage",
"push_tags": true,
"use_custom_gitignore": true,
"isolated": true,
"without_force": true,
"comment": "Push from Buddy",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
}

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/851",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/851/edit",
"id": 851,
"name": "Push to Your Repo",
"type": "PUSH",
"trigger_time": "ON_EVERY_EXECUTION",
"trigger_condition": "ALWAYS",
"last_execution_status": "INITIAL",
"run_only_on_first_failure": false,
"login": "api_tests_user",
"push_url": "https://app.app.buddy.works/buddy/repo",
"target_branch": "stage",
"push_tags": true,
"use_custom_gitignore": true,
"isolated": true,
"without_force": true,
"comment": "Push from Buddy",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"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",
"trigger_mode": "MANUAL",
"ref_name": "master",
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}

Git Push (Private key)

POST Parameters

NameTypeDescription
git_auth_mode
Required
StringThe authentication mode for SSH. Should be set to PRIVATE_KEY.
name
Required
StringThe name of the action.
push_url
Required
StringThe url to the repository.
trigger_time
Required
StringSpecifies when the action should be executed. Can be one of ON_EVERY_EXECUTION, ON_FAILURE or ON_BACK_TO_SUCCESS.
type
Required
StringThe type of the action. Should be set to PUSH.
server_key
Required
StringThe private SSH key.
passphraseStringThe passphrase for the private SSH key.
push_tagsBooleanDefines whether the tags should be pushed to the remote repository or not.
use_custom_gitignoreBooleanWhen set to false the push will ignore paths listed in .gitignore file.
isolatedBooleanWhen set to true, action will push only repository files (without artifacts).
target_branchStringDefines the remote branch to which the push will be performed. If empty, files will be pushed to the same branch.
deployment_excludesString[]The paths and/or files that will be left out during the push. Only works when use_custom_gitignore is set to true.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.
without_forceBooleanDefines whether the --force flag should be used when invoking the git push command or not.
commentStringOptional custom git commit message.
after_action_idIntegerThe numerical ID of the action, after which this action should be added.
trigger_conditionStringDefines when the build action should be run. Can be one of ALWAYS, ON_CHANGE, ON_CHANGE_AT_PATH, VAR_IS, VAR_IS_NOT or VAR_CONTAINS or VAR_NOT_CONTAINS.

Example

Request

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

JSON

{
"name": "Push to Your Repo",
"type": "PUSH",
"trigger_time": "ON_EVERY_EXECUTION",
"trigger_condition": "ALWAYS",
"git_auth_mode": "PRIVATE_KEY",
"push_url": "https://app.buddy.works/buddy/repo",
"passphrase": "password",
"push_tags": true,
"target_branch": "stage",
"use_custom_gitignore": true,
"isolated": true,
"without_force": true,
"comment": "Push from Buddy",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"server_key": "-----BEGIN RSA PRIVATE KEY-----\r\nProc-Type: 4,ENCRYPTED\r\nDEK-Info: DES-EDE3-CBC,688DBB59CFC83D58\r\n\r\n1m3qZGEqXEfLPIm9KZacr17/iMVOIJcvSLoMJueM8+QbcK4JStzbre2AN99TkCN/\r\nr1V12deiq/lJUPX07K30tnsTS+7z4Pq/D2WhirD+WQcREgdQU1A8dlx2NMRDi7d0\r\n32w8ZPlciz3bc5rpF0vy5Ll2q9TWye4fpgQwPUnEkam0SaRRwAMpnT/46/AeWgmn\r\n9nu8CNZp7QcOIR2WH6RNRhQTOD/hC+kVCxbEQUL5MOHV7iZX6BeUwd8bBNmci+o0\r\nz/I7ZLQo596Ih+0KPgA+vwS9c4c1TrUYhupU7tyIL6PwpAzhlq/UwxeE032AypiI\r\nkpm7z8I7MBYZs0bsS5UOa3FdHF8p38KrxozwQfsOmBxEHpAWM3slvqJpauuJLlyx\r\ncFfzgOTFSsLJ5J59ZdVRpeFr/W5+/9wpc+AJUP80i4pMEWsnamwdK9rU6QwpFiPf\r\nARzk6VdIiDlZRWeyoYcEfOGEJt+J0aSlXkt6BHgvkmDGq0YA9CNqb6GdB9t073yX\r\nCAqsQ/XEvDuZw14KHxErr5aL6uuZiioDhUmoGz9S3HstFR4T0nRmfCSrLyxTFQf1\r\nF0Sn9Dv4LrSGrzM/0svdlqUc5TDxPBVoW2Q56dNkAQwJg0k25x5YLdTUcd4GjbJW\r\n0qLJaO+bxfTDk5rCMHflYNCW18fEdeEvpBwL0ey93+Qya4xqjTOy2fgoz9U0QLUD\r\nfbgWSiFWnurC8I/SYcQUAEOKiYCDRzud92WzyjwRr2yPlcqf/Qi8+VNDyvoGYZgi\r\nD3vgqA9KPKnYkODYKIFTMW0bbRkgnLOsc1v5mkPTerUpeOGWPysOu3WV9if9e2lG\r\npG1gVfRJQei0k5Mex6CCV0gSQbf2MjswiyDvrPQ1yhpCsFeDAGKcLx+GU1/AhLRP\r\np32mqF5XJrMSTvifCGNOHkBMVUXmTjF7KCYZvcsERi1i2xNcwtcsLRm+QJKQsYQf\r\nhJ17/lOOcC8cqVLGmik3adOcOMCWq2b+NjgoJT55Hc0N07ikuQqazhFpZKkMFZEr\r\nFqbDZ2zGMwODjcDancXaghSS7ciIEdoAPGor1rftJ+l2oQVzBPk4pNfBKHJC7UmS\r\nUOGW3rGLSlRQcVEBFHbrsGP/JKXd06Cbrc3kDrdXbO430qRZh9LQQKbjvxHonU8Z\r\nXFeRpwG32YLSCSQunJtoEWQRJpVefc7rEmBAdLfNyA7xyqH2JLtlflaH9QApl7vE\r\nGNJJ5iuHCHPJwfhlaSMBF/Cb9Ofp4BM5fnNKrwaI9twv//U6XhVfYRcaKhCFEoMb\r\nYo4k7cKTQzL95xT1aYnwqSqtaDfoXASoA9j/mD0aMU+9zQEa0tVbJ/6Zjn3vMSTx\r\npvCYkXy9kZzEJZ2r7BiaQX0HX5Ki/Opt4eTWL5NbokDsE1bQu+D2BskJz30pRRRK\r\nvRargCRNl26158HNRLPkbo/gkwfJbfIBFgJ8YEQkcNap110oEaW6l3lnktZ0Ct3P\r\nEjkrppoV6UU1HCVmcoljOldTXQZuKmpz7aIuSwmUqoU4vWNvYteIZ3BhaVwCu/p8\r\nVaFL8Sapda0WYXPWXHuV+Dj295bedJxeqraWrQB87vKP4NVyzWv1WA==\r\n-----END RSA PRIVATE KEY-----\r\n"
}

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/851",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/851/edit",
"id": 851,
"name": "Push to Your Repo",
"type": "PUSH",
"trigger_time": "ON_EVERY_EXECUTION",
"trigger_condition": "ALWAYS",
"git_auth_mode": "PRIVATE_KEY",
"last_execution_status": "INITIAL",
"run_only_on_first_failure": false,
"push_url": "https://app.app.buddy.works/buddy/repo",
"target_branch": "stage",
"push_tags": true,
"use_custom_gitignore": true,
"isolated": true,
"without_force": true,
"comment": "Push from Buddy",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"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",
"trigger_mode": "MANUAL",
"ref_name": "master",
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}

Git Push (Private key from environment variables)

POST Parameters

NameTypeDescription
git_auth_mode
Required
StringThe authentication mode for SSH. Should be set to ENV_KEY.
name
Required
StringThe name of the action.
push_url
Required
StringThe url to the repository.
trigger_time
Required
StringSpecifies when the action should be executed. Can be one of ON_EVERY_EXECUTION, ON_FAILURE or ON_BACK_TO_SUCCESS.
type
Required
StringThe type of the action. Should be set to PUSH.
env_key
Required
StringThe private SSH key name defined in environment variables.
passphraseStringThe passphrase for the private SSH key.
push_tagsBooleanDefines whether the tags should be pushed to the remote repository or not.
use_custom_gitignoreBooleanWhen set to false the push will ignore paths listed in .gitignore file.
isolatedBooleanWhen set to true, action will push only repository files (without artifacts).
target_branchStringDefines the remote branch to which the push will be performed. If empty, files will be pushed to the same branch.
deployment_excludesString[]The paths and/or files that will be left out during the push. Only works when use_custom_gitignore is set to true.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.
without_forceBooleanDefines whether the --force flag should be used when invoking the git push command or not.
commentStringOptional custom git commit message.
after_action_idIntegerThe numerical ID of the action, after which this action should be added.
trigger_conditionStringDefines when the build action should be run. Can be one of ALWAYS, ON_CHANGE, ON_CHANGE_AT_PATH, VAR_IS, VAR_IS_NOT or VAR_CONTAINS or VAR_NOT_CONTAINS.

Example

Request

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

JSON

{
"name": "Push to Your Repo",
"type": "PUSH",
"trigger_time": "ON_EVERY_EXECUTION",
"trigger_condition": "ALWAYS",
"git_auth_mode": "ENV_KEY",
"push_url": "https://app.buddy.works/buddy/repo",
"passphrase": "password",
"push_tags": true,
"target_branch": "stage",
"use_custom_gitignore": true,
"isolated": true,
"without_force": true,
"comment": "Push from Buddy",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"server_key": "MyKey"
}

Sample Response

HTTP

Status: 201 Created
X-Rate-Limit-Limit: 1
X-Rate-Limit-Remaining: 999
{
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions/851",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/851/edit",
"id": 851,
"name": "Push to Your Repo",
"type": "PUSH",
"trigger_time": "ON_EVERY_EXECUTION",
"trigger_condition": "ALWAYS",
"git_auth_mode": "ENV_KEY",
"server_key": "MyKey",
"last_execution_status": "INITIAL",
"run_only_on_first_failure": false,
"push_url": "https://app.app.buddy.works/buddy/repo",
"target_branch": "stage",
"push_tags": true,
"use_custom_gitignore": true,
"isolated": true,
"without_force": true,
"comment": "Push from Buddy",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"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",
"trigger_mode": "MANUAL",
"ref_name": "master",
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}

JSON