Skip to main content

What Can I Deploy in Kubernetes?

In Harness, a managed Kubernetes workload is a Deployment, StatefulSet, or DaemonSet object deployed and managed to steady state.

Harness Canary and Blue/Green Workflow default steps support a single Deployment or StatefulSet workload as a managed entity.

Rolling Workflow default steps support Deployment, StatefulSet, or DaemonSet as managed workloads, but not Jobs.

You can deploy any Kubernetes workload in any Workflow type by using a Harness annotation to make it unmanaged (harness.io/direct-apply).

The Apply Step can deploy any workloads or objects in any Workflow type as a managed workload, including Jobs. Workloads deployed with the Apply step are not rollback on failure.

OpenShift: Harness supports OpenShift DeploymentConfig in OpenShift clusters as a managed workload across Canary, Blue Green, and Rolling deployment strategies. Please use apiVersion: apps.openshift.io/v1 and not apiVersion: v1.

See Using OpenShift with Harness Kubernetes.

Rolling vs Apply

The following table lists the differences between the Rollout Deployment step (default in a Rolling Workflow type) and the Apply step (which may be used in any Workflow type).

JobsRollbackTrack to Steady State
Rollout Deployment stepNoYesYes
Apply stepYesNoYes, by default. You can the skip steady state check using the Skip Steady State Check option.