GKE Apply Deployment

  • 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 KUBERNETES_APPLY.
integrationrequired Integration
The integration.
gke_auth_typerequired string
Authorization type. Set to SERVICE_ACCOUNT.
zone_idrequired string
The ID of the GKE zone.
clusterrequired string
The ID of the GKE cluster.
application_idrequired string
The ID of the GKE application.
config_pathrequired string
The path to the configuration file.
record_argoptional string
Record 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_argoptional boolean
If 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_argoptional boolean
Delete and re-create the specified resource, when PATCH encounters conflict and has retried for 5 times.
overwrite_argoptional boolean
Automatically resolve conflicts between the modified and live configuration by using values from the modified configuration.
cascade_argoptional boolean
Only 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_argoptional boolean
Defines whether to select all the specified resources.
grace_period_argoptional integer
Only 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_argoptional boolean
Automatically 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_argoptional string
Overwrite the default whitelist with <group/version/kind> for –prune.
kubectl_versionoptional string
Version of the kubectl used in the action. Default is <latest<.

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": "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": "SERVICE_ACCOUNT",
  "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": {
    "hash_id": "5ddb7c180fb38be67bd78a88a"
  }
}'
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/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": "SERVICE_ACCOUNT", "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", "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": "test pipeline", "on": "CLICK", "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