YAML for Kubernetes kubectl

View as Markdown

Execute kubectl and Helm commands on a Kubernetes cluster.

YAML parameters for Kubernetes kubectl

PARAMETERS
commandsrequiredstring
The commands that will be executed. Several commands go in one multi-line string (a | block), one per line - not a YAML list.
targetsrequired(string | TargetYaml)[]
Target Kubernetes clusters for deployment. Each item is a target definition or a filter matching existing targets by identifier: a plain string such as sd* (* as a wildcard) or an object with type: MATCH.
typerequiredstring

Value: KUBERNETES_CLI

actionrequiredstring
Unique identifier for the action within the pipeline.
shellstring enum
The name of the shell that will be used to execute commands
Allowed enum:
SH,
BASH,
POWERSHELL
kubectl_versionstring
Version of kubectl to use.
setup_commandsstring
Commands to run before applying manifests. Several commands go in one multi-line string (a | block), one per line - not a YAML list.
trigger_timestring enum
Specifies when the action should be executed.
Allowed enum:
ON_EVERY_EXECUTION,
ON_FAILURE,
ON_BACK_TO_SUCCESS,
ON_WARNING,
ON_WAIT_FOR_APPROVE,
ON_TERMINATE
loopstring[]
The list of variables for dynamic action execution. The action runs once for each value.
run_only_on_first_failureboolean
When true, the action runs only on the first failure instead of on each failure. Used only when trigger_time is ON_FAILURE.
disabledboolean
When set to true the action is disabled. By default it is set to false.
timeoutinteger
The timeout in seconds. It cannot exceed the action time limit of the workspace plan; a higher value is rejected.
ignore_errorsboolean
If set to true the execution will proceed, mark action as a warning and jump to the next action. Doesn't apply to deployment actions.
retry_intervalinteger
Delay time between auto retries in seconds.
retry_countinteger
Number of retries if the action fails.

Constraints: ≤ 10

run_nextstring enum
Defines whether the action should run in parallel with the next one.
Allowed enum:
WAIT_ON_SUCCESS,
IN_SOFT_PARALLEL,
IN_HARD_PARALLEL
trigger_conditionsTriggerConditionYaml[]
The list of trigger conditions to meet so that the action can be triggered.
variablesVariableYaml[]
The list of variables you can use in the action.

Last modified on Nov 2, 2026

YAML examples for Kubernetes kubectl

Execute kubectl commands

yaml
- action: "Run kubectl"
  type: "KUBERNETES_CLI"
  trigger_time: "ON_EVERY_EXECUTION"
  kubectl_version: "1.11.1"
  shell: "SH"
  commands: |-
    kubectl --namespace=buddy-tests get pods
    kubectl get services
  setup_commands: "apt-get update"
  targets:
    - target: my_gke_cluster
      type: GKE
      name: My GKE Cluster
      integration: my_integration
      cluster: cluster-1
      project: tokyo-house-138923
      zone: europe-west1-c

Execute kubectl on self-managed cluster

yaml
- action: "Run kubectl commands"
  type: "KUBERNETES_CLI"
  kubectl_version: "latest"
  shell: "BASH"
  commands: |-
    kubectl get pods
    kubectl get deployments
  targets:
    - target: my_cluster
      type: K8S_CLUSTER
      name: My Kubernetes Cluster
      cluster: https://192.168.5.226:6443
      auth:
        method: TOKEN
        token: $KUBE_TOKEN

Execute kubectl on Amazon EKS cluster

yaml
- action: "Run kubectl"
  type: "KUBERNETES_CLI"
  kubectl_version: "1.11.1"
  shell: "SH"
  commands: "kubectl --namespace=buddy-tests get pods"
  targets:
    - target: my_eks_cluster
      type: EKS
      name: My EKS Cluster
      integration: my_integration
      cluster: cluster-1
      region: us-west-2
      role_arn: arn:aws:iam::344123456789:role/EKS_TESTS

Execute kubectl on Azure AKS cluster

yaml
- action: "Run kubectl"
  type: "KUBERNETES_CLI"
  kubectl_version: "1.11.1"
  shell: "SH"
  commands: "kubectl --namespace=buddy-tests get pods"
  targets:
    - target: my_aks_cluster
      type: AKS
      name: My AKS Cluster
      integration: my_integration
      cluster: buddy-tests
      subscription: d4fd0732-1b7f-47ff-8ca9-8b003428dcd8
      resource_group: test-buddy_group

Execute kubectl on DigitalOcean Kubernetes cluster

yaml
- action: "Run kubectl"
  type: "KUBERNETES_CLI"
  kubectl_version: "1.11.1"
  shell: "SH"
  commands: "kubectl --namespace=buddy-tests get pods"
  targets:
    - target: my_doks_cluster
      type: DOKS
      name: My DOKS Cluster
      integration: my_integration
      cluster: 0ec55079-0398-4cfc-9b51-97e07cb07ae7