Skip to content
Proud to collaborate with Microsoft for Startups

cluster.register-kubernetes-connection ​

Persist a generated Kubernetes credential payload as a Kubernetes CloudConnection.

Persist generated Kubernetes credentials as a Kubernetes CloudConnection.

Overview ​

PropertyValue
Workflow typeLinear
LibraryApp-clusters
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
organization_uuiduuidYes—Organization UUID for tenant isolation.
cluster_uuiduuidNo—Existing logical cluster UUID when registration is retried.
cluster_namestringYes—Human-friendly cluster name.
providerstringYes—Source provider key.
cluster_kindstringYes—eks, gke, aws-vm, or gcp-vm.
provider_connection_uuiduuidNo—Cloud provider CloudConnection UUID used to manage the cluster.
provider_cluster_refstringYes—Provider-side cluster identifier.
regionstringNo—Primary provider region or location.
provider_configjsonNo—Provider-specific status/delete inputs to persist on the logical Cluster row.
node_configjsonNo—Provider-specific node pool or nodegroup metadata to persist on the logical Cluster row.
connection_uuiduuidNo—Existing Kubernetes CloudConnection UUID when only the logical Cluster row needs metadata refresh.
credential_payloadjsonNo—Kubeconfig, api_server/bearer_token/ca_certificate, or a delegated (auth_mode + provider_connection_uuid + api_server + ca_certificate) payload. Required when connection_uuid is not supplied.
connection_namestringNo—Explicit Kubernetes CloudConnection name.
namespace_defaultstringNo—Default namespace for Kubernetes operations.
account_infojsonNo—Provider account metadata to attach to the connection.
actorstringNo—Caller initiating registration.
workflow_run_idstringNo—Engine DAG run ID stamped onto child steps.

Output Schema ​

FieldTypeRequiredDefaultDescription
organization_uuiduuidNo—Organization UUID echoed from input.
cluster_uuiduuidNo—Logical cluster UUID created or reused by this workflow.
cluster_namestringNo—Cluster display name.
providerstringNo—Source provider key.
cluster_kindstringNo—Cluster kind.
provider_connection_uuiduuidNo—Cloud provider CloudConnection UUID used to manage the cluster.
provider_cluster_refstringNo—Provider-side cluster identifier.
regionstringNo—Primary provider region or location.
provider_configjsonNo—Provider-specific status/delete inputs persisted on the logical Cluster row.
node_configjsonNo—Provider-specific node pool or nodegroup metadata persisted on the logical Cluster row.
connection_uuiduuidNo—Persisted Kubernetes CloudConnection UUID.
persist_connectionjsonNo—Sanitized output from connection.persist_connection.
persistedbooleanNo—True when a CloudConnection row was written.
restoredbooleanNo—True when a soft-deleted connection was restored.
cluster_record_persistedbooleanNo—True after the logical Cluster row was created or updated.
connection_compensatedbooleanNo—True when failure cleanup disconnected the created Kubernetes CloudConnection.
connection_compensationjsonNo—Sanitized output from connection.disconnect when failure cleanup runs.
connection_compensation_errorstringNo—Cleanup error if the created Kubernetes CloudConnection could not be disconnected.
registered_atstringNo—ISO registration timestamp.
failure_reasonstringNo—Human-readable failure reason.
failure_typestringNo—Failure category.
failed_actionstringNo—Action that failed.
failed_stepjsonNo—Failed logical step or child workflow.
failed_layerjsonNo—Engine failed layer when applicable.
failed_at_statestringNo—State where failure occurred.
errorstringNo—Error message.
error_typestringNo—Error class.
failed_atstringNo—ISO failure timestamp.

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—persist_connection—
persisting_cluster_recordNoNo—complete—
persisting_connectionNoNo—persist_cluster_record—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingpersist_connectionpersisting_connection—
persisting_connectionpersist_cluster_recordpersisting_cluster_record—
persisting_cluster_recordcompletecompleted—
* (any state)failfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "cluster.register-kubernetes-connection",
  "initial_data": {
    "organization_uuid": "value",
    "cluster_name": "value",
    "provider": "value",
    "cluster_kind": "value"
  }
}