Skip to main content

Resource Status and Events

Kratix follows the Kubernetes convention of using status and events to convey the status of a Resource and to allow programmatic interactions.

Conditions

Resources have the following list of conditions:

  • ConfigureWorkflowCompleted – all Configure workflow pipelines finished successfully.
  • WorksSucceeded – every Work created for the Resource has completed.
  • Reconciled – Resource has been successfully reconciled; set to true when all the above conditions are all true.

Example output:

status:
conditions:
- lastTransitionTime: "2025-06-23T14:07:29Z"
message: Pipelines completed
reason: PipelinesExecutedSuccessfully
status: "True"
type: ConfigureWorkflowCompleted
- lastTransitionTime: "2025-06-23T14:07:32Z"
message: Reconciled
reason: Reconciled
status: "True"
type: Reconciled
- lastTransitionTime: "2025-06-23T14:03:24Z"
message: All works associated with this resource are ready
reason: WorksSucceeded
status: "True"
type: WorksSucceeded
kratix:
workflows:
lastSuccessfulConfigureWorkflowTime: "2026-03-06T16:08:46Z"

Common Resource Status Fields

  • kratix.workflows.lastSuccessfulConfigureWorkflowTime – The time of the last successful Configure workflow run
  • workflows - The number of Resource configure workflow pipelines
  • workflowsSucceeded - The number of Resource configure workflow pipelines that have completed successfully
  • workflowsFailed- The number of Resource configure workflow pipelines that have failed

Pipeline Execution Status Fields

Kratix executes Resource Configure Workflow pipelines in order and records the state of each pipeline under status.kratix.workflows.pipelines.

For example, if a Resource Configure Workflow has three pipelines and the second pipeline is currently running, the status could look like:

status:
kratix:
workflows:
lastSuccessfulConfigureWorkflowTime: "2026-03-16T11:52:06Z"
pipelines:
- name: resource-pipeline0
phase: Succeeded
lastTransitionTime: "2026-03-16T11:53:04Z"
- name: resource-pipeline1
phase: Running
lastTransitionTime: "2026-03-16T11:53:05Z"
- name: resource-pipeline2
phase: Pending
lastTransitionTime: "2026-03-16T11:52:57Z"

Each pipeline can be in one of these phases: Pending, Running, Succeeded, or Failed.

lastTransitionTime is updated whenever the pipeline phase changes. If a pipeline enters the Failed phase, Kratix stops executing the remaining pipelines in that workflow. When a new configure reconciliation starts, Kratix resets all pipeline phases to Pending before running the workflow again.

For more detail about a failed pipeline, inspect the events on the resource and the logs of the failed pipeline Job.

Events

Events note important steps in the Resource lifecycle such as starting a workflow job or encountering errors.

Inspect them with:

kubectl describe <resource> <name>

Example Resource events:

kubectl describe <resource> <name>
...
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal PipelineStarted 7m13s ResourceRequestController Configure Pipeline started: instance-configure
Warning WorksMisplaced 2m27s ResourceRequestController Some works associated with this resource are misplaced: [redis-example-instance-configure-b11aa]
Normal WorksSucceeded 8s (x2 over 7m9s) ResourceRequestController All works associated with this resource are ready
Normal ReconcileSucceeded 8s (x2 over 7m9s) ResourceRequestController Successfully reconciled

Successful events will be of type Normal whereas errors will be published as Warning events. These events help in troubleshooting and understanding the status of your Resource requests.