跳到主要内容

Upcloud

Learn how to add and configure the "Upcloud" action in your Buddy pipeline

Upcloud (Password)

POST参数

名称类型描述
name
必填
String操作名称
type
必填
StringThe type of the action. Should be set to UPCLOUD.
authentication_mode
必填
StringThe authentication mode for SSH. Should be set to PASS.
host
必填
StringThe host for the connection.
host_name
必填
StringThe hostname of the Upcloud server.
login
必填
StringThe username required to connect to the server.
port
必填
StringThe port for the connection.
integration
必填
IntegrationThe integration.
input_typeStringDefines whether the files are deployed from the repository or from the build filesystem. Can be one of SCM_REPOSITORY or BUILD_ARTIFACTS.
local_pathStringThe path in the repository.
passwordStringThe password required to connect to the server.
remote_pathStringThe absolute or relative path on the remote server.
deployment_excludesString[]The paths and/or files that will be left out during the deployment.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.

示例

请求

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

JSON

{
"name": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"authentication_mode": "PASS",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"login": "$username",
"password": "$password",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets/",
"remote_path": "Home/www/",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"integration": {
"hash_id": "5ddb7c180fb38be67bd78a88a"
}
}

示例响应

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": "Upload files to Upcloud server",
"type": "DIGITAL_OCEAN",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets/",
"remote_path": "Home/www/",
"login": "$username",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"authentication_mode": "PASS",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"integration": {
"url": "https://api.buddy.works/workspaces/buddy/user/integrations/1",
"html_url": "https://app.buddy.works/my-id",
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"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"
}
}

Upcloud (Private key)

POST参数

名称类型描述
name
必填
String操作名称
type
必填
StringThe type of the action. Should be set to UPCLOUD.
authentication_mode
必填
StringThe authentication mode for SSH. Should be set to PRIVATE_KEY.
host
必填
StringThe host for the connection.
host_name
必填
StringThe hostname of the Upcloud server.
login
必填
StringThe username required to connect to the server.
port
必填
StringThe port for the connection.
server_key
必填
StringThe private SSH key.
integration
必填
IntegrationThe integration.
input_typeStringDefines whether the files are deployed from the repository or from the build filesystem. Can be one of SCM_REPOSITORY or BUILD_ARTIFACTS.
local_pathStringThe path in the repository.
passphraseStringThe passphrase for the private SSH key.
remote_pathStringThe absolute or relative path on the remote server.
deployment_excludesString[]The paths and/or files that will be left out during the deployment.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.

示例

请求

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

JSON

{
"name": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"authentication_mode":
"PRIVATE_KEY",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"login": "$username",
"passphrase": "secret_phrase",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets/",
"remote_path": "Home/www/",
"deployment_excludes": [
"/assets/",
"file.txt"
],
"integration": {
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"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"
}

示例响应

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": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets/",
"remote_path": "Home/www/",
"login": "$username",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"authentication_mode": "PRIVATE_KEY",
"deployment_excludes": [
"/assets/",
"file.txt"
],
"integration": {
"url": "https://api.buddy.works/workspaces/buddy/user/integrations/1",
"html_url": "https://app.buddy.works/my-id",
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"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"
}
}

Upcloud (Private key from environment variables)

POST参数

名称类型描述
name
必填
String操作名称
type
必填
StringThe type of the action. Should be set to UPCLOUD.
authentication_mode
必填
StringThe authentication mode for SSH. Should be set to ENV_KEY.
host
必填
StringThe host for the connection.
host_name
必填
StringThe hostname of the Upcloud server.
login
必填
StringThe username required to connect to the server.
port
必填
StringThe port for the connection.
env_key
必填
StringThe private SSH key name defined in environment variables.
integration
必填
IntegrationThe integration.
input_typeStringDefines whether the files are deployed from the repository or from the build filesystem. Can be one of SCM_REPOSITORY or BUILD_ARTIFACTS.
local_pathStringThe path in the repository.
passphraseStringThe passphrase for the private SSH key.
remote_pathStringThe absolute or relative path on the remote server.
deployment_excludesString[]The paths and/or files that will be left out during the deployment.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.

示例

请求

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

JSON

{
"name": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"authentication_mode": "ENV_KEY",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"login": "$username",
"passphrase": "secret_phrase",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets/",
"remote_path": "Home/www/",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"env_key": "MyKey",
"integration": {
"hash_id": "5ddb7c180fb38be67bd78a88a"
}
}

示例响应

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": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets/",
"remote_path": "Home/www/",
"login": "$username",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"authentication_mode": "ENV_KEY",
"env_key": "MyKey",
"deployment_excludes": [
"/tmp/",
"*.log"
],
"deployment_includes": [
"/assets/style",
"/tmp/file.txt"
],
"integration": {
"url": "https://api.buddy.works/workspaces/buddy/user/integrations/1",
"html_url": "https://app.buddy.works/my-id",
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"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"
}
}

Upcloud (Private key & password)

POST参数

名称类型描述
name
必填
String操作名称
type
必填
StringThe type of the action. Should be set to UPCLOUD.
authentication_mode
必填
StringThe authentication mode for SSH. Should be set to PRIVATE_KEY_AND_PASS.
host
必填
StringThe host for the connection.
host_name
必填
StringThe hostname of the Upcloud server.
login
必填
StringThe username required to connect to the server.
password
必填
StringThe password required to connect to the server.
port
必填
StringThe port for the connection.
server_key
必填
StringThe private SSH key.
integration
必填
IntegrationThe integration.
input_typeStringDefines whether the files are deployed from the repository or from the build filesystem. Can be one of SCM_REPOSITORY or BUILD_ARTIFACTS.
local_pathStringThe path in the repository.
passphraseStringThe passphrase for the private SSH key.
remote_pathStringThe absolute or relative path on the remote server.
deployment_excludesString[]The paths and/or files that will be left out during the deployment.
deployment_includesString[]The exceptions from the ignore patterns set in deployment_excludes.

示例

请求

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

JSON

{
"name": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"authentication_mode": "PRIVATE_KEY_AND_PASS",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"login": "$username",
"password": "$password",
"passphrase": "secret_passphrase",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets-old/",
"remote_path": "Home/www/",
"deployment_excludes": [
"/assets-old/",
"file.txt"
],
"integration": {
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"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"
}

示例响应

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/855",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/855/edit",
"id": 855,
"name": "Upload files to Upcloud server",
"type": "UPCLOUD",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"input_type": "SCM_REPOSITORY",
"local_path": "/assets-old/",
"remote_path": "Home/www/",
"login": "$username",
"host": "123.45.67.89",
"host_name": "buddy-tests",
"port": "22",
"authentication_mode": "PRIVATE_KEY_AND_PASS",
"deployment_excludes": [
"/assets-old/",
"file.txt"
],
"integration": {
"url": "https://api.buddy.works/workspaces/buddy/user/integrations/1",
"html_url": "https://app.buddy.works/my-id",
"hash_id": "5ddb7c180fb38be67bd78a88a"
},
"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"
}
}