> ## Documentation Index
> Fetch the complete documentation index at: https://docs.firebolt.io/llms.txt
> Use this file to discover all available pages before exploring further.

# FireboltEnginePreset CRD reference

> Spec, status, and Firebolt Operator-owned template fields for FireboltEnginePreset.

## Spec reference

`FireboltEnginePreset` is a namespaced ambient overlay. The object must be named `firebolt`: a CEL validation rule baked into the CRD pins `metadata.name`, so the API server rejects any other name and name uniqueness caps a namespace at one object — with or without the Firebolt Operator's admission webhooks. Engines do not reference it by name.

| Field                     | Required | Default         | Description                                                                                                                                                                                   |
| ------------------------- | -------- | --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `spec.template`           | **Yes**  | –               | [`PodTemplateSpec`](https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/pod-template-v1/) fragment. See [Firebolt Operator-owned fields](#firebolt-operator-owned-fields). |
| `spec.storage`            | No       | `{}` (emptyDir) | Default per-pod data volume. Backend selection is whole-struct. See the [FireboltEngine CRD reference](./engine-crd-reference).                                                               |
| `spec.customEngineConfig` | No       | –               | Free-form `config.yaml` fragment. The Firebolt Operator strips its owned paths (`schema_version`, `instance.*`, `engine.id`, `engine.nodes`, and `engine.termination_grace_period`).          |

## Status

| Field                           | Description                                                                                                                                                                                                                                             |
| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `status.observedGeneration`     | `metadata.generation` last reconciled.                                                                                                                                                                                                                  |
| `status.boundEngines`           | Count of Firebolt Engines in the same namespace.                                                                                                                                                                                                        |
| `status.conditions[type=Ready]` | `True` when `spec.template` contains no operator-owned paths. `False`/`OperatorOwnedFieldSet` is defense in depth for objects admitted under an older operator. `False`/`DeletionBlocked` while delete is held because engines remain in the namespace. |

Short name: `firengp`.

```bash theme={"theme":{"light":"css-variables","dark":"css-variables"}}
kubectl get firengp
```

## Firebolt Operator-owned fields

The validating webhook rejects user input on paths the Firebolt Operator owns end-to-end. The allowlist is the same as [`FireboltEngineClass.spec.template`](./fireboltengineclass-crd-reference#firebolt-operator-owned-fields-on-class-templates).
