deploy.k8s.rollout-set-image
Roll out a release to a KUBERNETES DeploymentTarget by driving k8s.app.set-image. Helm-safe — only touches the container image.
Apply a release to a Helm-managed k8s DeploymentTarget by patching the image only.
Overview
| Property | Value |
|---|---|
| Workflow type | Linear |
| Library | App-deployments |
| Version | 1.0 |
Input Schema
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
rollout_uuid | uuid | Yes | — | — |
organization_uuid | uuid | Yes | — | — |
Output Schema
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
rollout_uuid | uuid | No | — | — |
organization_uuid | uuid | No | — | — |
image | string | No | — | — |
image_tag | string | No | — | — |
image_poll_attempts | integer | No | — | — |
image_timed_out_at | string | No | — | — |
child_workflow_uuid | string | No | — | — |
namespace | string | No | — | — |
app_name | string | No | — | — |
container | string | No | — | — |
poll_attempts | integer | No | — | — |
timed_out_at | string | No | — | — |
completed_at | string | No | — | — |
failed_at | string | No | — | — |
failed_at_state | string | No | — | — |
failure_reason | string | No | — | — |
failure_type | string | No | — | — |
failed_action | string | No | — | — |
failed_step | string | No | — | — |
failed_layer | string | No | — | — |
error | string | No | — | — |
error_type | string | No | — | — |
States
| State | Initial | Terminal | Success | Auto-advance | Description |
|---|---|---|---|---|---|
pending | Yes | No | — | prepare | Strategy started; will resolve image and check ECR |
applying | No | No | — | wait | k8s.app.set-image child workflow started; ready to poll |
awaiting_image | No | No | — | — | Polling ECR for image availability (build may still be in progress) |
waiting | No | No | — | — | Polling k8s.app.set-image child workflow status |
completed | No | Yes | Yes | — | Child workflow reported success |
failed | No | Yes | No | — | Child workflow reported failure or strategy errored |
State Diagram
Transitions
| From | Action | To | Description |
|---|---|---|---|
pending | prepare | awaiting_image | Resolve image url and start ECR pre-flight |
awaiting_image | prepare | awaiting_image | Re-poll ECR while image not yet pushed |
awaiting_image | apply | applying | Image present in ECR; start the k8s.app.set-image child |
applying | wait | waiting | Begin polling child status |
waiting | wait | waiting | Re-poll while child is still running |
waiting | complete | completed | Child reached terminal-success |
* (any state) | fail | failed | Strategy moves to failed |
API Usage
bash
POST /api/workflows/start
Content-Type: application/json
{
"workflow_type": "deploy.k8s.rollout-set-image",
"initial_data": {
"rollout_uuid": "value",
"organization_uuid": "value"
}
}