GKE Apply Deployment

POST Parameters

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. Set to SERVICE_ACCOUNT.
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.
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.
kubectl_versionStringVersion of the kubectl used in the action. Default is <latest<.

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": "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"
   }
}

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": "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"
  }
}

Last modified on November 16, 2022

Questions?

Not sure how to configure a pipeline for your process? Reach out on the live-chat or contact support

Get Started

Sign up for free and deploy your project in less than 10 minutes.