windmill-labs/windmill · error

K8s operator is not available in this build

Error message

K8s operator is not available in this build

What it means

The Kubernetes operator in windmill-operator is enterprise-only (`private` feature). The OSS stub `run` exists so the binary links, but starting the operator without the EE feature immediately bails. It indicates the deployment is attempting to run a feature not present in the build.

Source

Thrown at backend/windmill-operator/src/operator_oss.rs:6

#[cfg(feature = "private")]
pub use crate::reconciler_ee::run;

#[cfg(not(feature = "private"))]
pub async fn run(_db: sqlx::Pool<sqlx::Postgres>) -> anyhow::Result<()> {
    anyhow::bail!("K8s operator is not available in this build")
}

View on GitHub (pinned to e474e8803c)

Solutions

  1. Use an enterprise-licensed Windmill build/image that includes the EE K8s operator
  2. Disable K8s operator workers in configuration and use the default Docker-based worker pool
  3. If you have an EE license, deploy the EE-enabled image rather than the OSS one
Defensive patterns

Strategy: validation

Validate before calling

// check build capability before configuring a K8s operator worker
if !cfg!(feature = "private") {
  eprintln!("K8s operator requires the enterprise (private) feature; skipping");
  return;
}

Try / catch

match operator_oss::run(db).await {
  Err(e) if e.to_string().contains("not available in this build") =>
    eprintln!("use an EE build or disable K8s operator workers"),
  Err(e) => return Err(e),
  Ok(()) => (),
}

Prevention

When it happens

Trigger: Calling `windmill_operator::operator_oss::run` (starting the K8s operator worker) on a build compiled without the `private`/EE feature.

Common situations: Running the open-source image with K8s operator workers enabled in configuration; attempting to use the Kubernetes executor on OSS instead of EE.

Related errors


AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03). Data as JSON: /api/errors/35962ad6201804a1. Report an issue: GitHub.