GKE Run Helm

  • 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 HELM.
execute_commandsrequired string[]
The commands that will be executed.
integration_hashrequired Integration
The ID of the Google integration.
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.
helm_versionrequired string
The Helm version.
helm_repository_regionoptional string
Helm repository region. Set it if Helm repository is on AWS S3.
helm_repository_integrationoptional Integration
Amazon integration ID. Set it if Helm repository is on AWS S3.
helm_repository_keyoptional string
Service Account Key from Google Cloud Storage. Set it if Helm repository is on GCS.
setup_commandsoptional string[]
Allow you to install Helm plugins.
kubectl_versionoptional string
Version of the kubectl used in the action. Default is “latest”.
shelloptional string
The name of the shell that will be used to execute commands. Can be one of SH (default) or BASH.

Last modified on Sep 27, 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": "Kubernetes - execute: # helm upgrade i myvalues.yaml f override.yaml myApp .chart",
  "type": "HELM",
  "shell": "SH",
  "trigger_time": "ON_EVERY_EXECUTION",
  "cluster": "cluster-1",
  "application_id": "app-id",
  "integration": {
    "hash_id": "5ddb7c180fb38be67bd78a88a"
  },
  "zone_id": "europe-west3-a",
  "gke_auth_type": "SERVICE_ACCOUNT",
  "helm_repository_integration": {
    "hash_id": "5e1873c2e36b2f65b2896101",
    "type": "AMAZON"
  },
  "execute_commands": [
    "kubectl apply f ./mymanifest.yaml",
    "helm upgrade i myvalues.yaml f override.yaml myApp .chart"
  ],
  "setup_commands": [
    "helm plugin install https://github.com/hypnoglow/helm-s3.git --version 0.7.0",
    "helm plugin install https://github.com/hayorov/helm-gcs --version 0.2.1"
  ],
  "helm_version": "v3.0.1",
  "kubectl_version": "latest",
  "timeout": 5
}'
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": "Kubernetes - execute: # helm upgrade i myvalues.yaml f override.yaml myApp .chart", "type": "HELM", "cluster": "cluster-1", "application_id": "app-id", "integration": { "hash_id": "5ddb7c180fb38be67bd78a88a" }, "zone_id": "europe-west3-a", "gke_auth_type": "SERVICE_ACCOUNT", "shell": "SH", "trigger_time": "ON_EVERY_EXECUTION", "last_execution_status": "INITIAL", "disabled": false, "helm_repository_integration": { "url": "https://api.buddy.works/workspaces/buddy/user/integrations/5e1873c2e36b2f65b2896101", "html_url": "https://app.dev.io/my-id", "hash_id": "5e1873c2e36b2f65b2896101", "type": "AMAZON" }, "execute_commands": [ "kubectl apply f ./mymanifest.yaml", "helm upgrade i myvalues.yaml f override.yaml myApp .chart" ], "setup_commands": [ "helm plugin install https://github.com/hypnoglow/helm-s3.git --version 0.7.0", "helm plugin install https://github.com/hayorov/helm-gcs --version 0.2.1" ], "kubectl_version": "latest", "helm_version": "v3.0.1", "run_next_parallel": false, "timeout": 5, "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 server", "on": "CLICK", "refs": [ "refs/heads/master" ], "last_execution_status": "INITIAL", "last_execution_revision": null, "always_from_scratch": false, "ignore_fail_on_project_status": false, "no_skip_to_most_recent": false, "auto_clear_cache": false, "do_not_create_commit_status": false } }
STATUS
201 Created
LIMITS
X-Rate-Limit-Limit: 1 X-Rate-Limit-Remaining: 999