Skip to main content
A FireboltEngineClass provides reusable defaults to Engines in the same namespace. Set FireboltEngine.spec.engineClassRef to the class name. Values resolve in this order:
  1. The Engine value
  2. The referenced EngineClass value
  3. The Firebolt Operator default
An EngineClass is namespaced because its pod template can reference namespaced resources such as ServiceAccounts, Secrets, ConfigMaps, and persistent volume claims.

Pod template precedence

The Engine template overrides the class template for conflicting scalar values. Collection behavior depends on the field: The Firebolt Operator owns fields required for Engine identity, networking, probes, and StatefulSet behavior. See the FireboltEngineClass CRD reference for the complete allowed-field table.

Override a class image for one Engine

Use the class image as the shared default:
Override it on one Engine:

Inherited Engine settings

Class changes

Changes to class settings that alter Engine pods roll every bound Engine in the namespace. These include the pod template, storage, custom Engine configuration, and UI sidecar setting. Changes to rollout, drain-check, and auto-stop policy take effect without forcing a pod rollout by themselves. Inspect the number of referencing Engines with:

Delete a class

Class deletion remains blocked while Engines in the same namespace reference it. Remove or replace spec.engineClassRef on every bound Engine, wait for those updates to reconcile, then delete the class. If deletion is blocked, status.conditions[type=Ready] reports reason DeletionBlocked and status.boundEngines shows the current consumer count.