GKE Apply Deployment

POST Parameters

You can find the list with common parameters for all Buddy actions here.

NameTypeDescription
name
Required
StringThe name of the action.
type
Required
StringThe type of the action. Should be set to KUBERNETES_APPLY.
integration
Required
IntegrationThe integration.
gke_auth_type
Required
StringAuthorization type. Can be one of BASIC, SERVICE_ACCOUNT or CERTS.
zone_id
Required
StringThe ID of the GKE zone.
cluster
Required
StringThe ID of the GKE cluster.
application_id
Required
StringThe ID of the GKE application.
config_path
Required
StringThe path to the configuration file.
server_keyStringThe server key required when gke_auth_type is set to SERVICE_ACCOUNT.
record_argStringRecord current kubectl command in the resource annotation. Can be one of TRUE, FALSE or NOT_SET. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.
save_config_argBooleanIf true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.
force_argBooleanDelete and re-create the specified resource, when PATCH encounters conflict and has retried for 5 times.
overwrite_argBooleanAutomatically resolve conflicts between the modified and live configuration by using values from the modified configuration.
cascade_argBooleanOnly relevant during a prune or a force apply. If true, cascade the deletion of the resources managed by pruned or deleted resources (e.g. Pods created by a ReplicationController).
all_argBooleanDefines whether to select all the specified resources.
grace_period_argIntegerOnly relevant during a prune or a force apply. Period of time in seconds given to pruned or deleted resources to terminate gracefully. Ignored if negative.
prune_argBooleanAutomatically delete resource objects that do not appear in the configs and are created by either apply or create –save-config. Should be used with either -l or –all.
prune_whitelist_argStringOverwrite the default whitelist with <group/version/kind> for –prune.

Example

Request

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

JSON

{
"name": "Apply deployment",
"type": "KUBERNETES_APPLY",
"trigger_time": "ON_EVERY_EXECUTION",
"zone_id": "europe-west1-c",
"cluster": "cluster-1",
"application_id": "tokyo-house-138923",
"gke_auth_type": "BASIC",
"config_path": "config.yaml",
"record_arg": "NOT_SET",
"save_config_arg": false,
"force_arg": false,
"overwrite_arg": false,
"cascade_arg": false,
"all_arg": true,
"grace_period_arg": 0,
"prune_arg": true,
"prune_whitelist_arg": "",
"timeout": "600",
"integration": {
"id": 2
}
}

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/pipeline/2/action/2/edit",
"id": 2,
"name": "Apply deployment",
"type": "KUBERNETES_APPLY",
"trigger_time": "ON_EVERY_EXECUTION",
"zone_id": "europe-west1-c",
"cluster": "cluster-1",
"application_id": "tokyo-house-138923",
"gke_auth_type": "BASIC",
"config_path": "config.yaml",
"record_arg": "NOT_SET",
"save_config_arg": false,
"force_arg": false,
"overwrite_arg": false,
"cascade_arg": false,
"all_arg": true,
"grace_period_arg": 0,
"prune_arg": true,
"prune_whitelist_arg": "",
"timeout": "600",
"integration": {
"url": "https://api.buddy.works/workspaces/buddy/user/integrations/2",
"html_url": "https://app.buddy.works/my-id",
"id": 2
},
"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": "test pipeline",
"trigger_mode": "MANUAL",
"ref_name": "master",
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}