Helm Chart V2: global.extraVolumes missing in server, connector-builder-server, and temporal deployment templates
- Lingua principale
- Python
- Stelle
- 22.1k
- Fork
- 5.3k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
### Helm Chart Version
2.0.19
### What step the error happened?
Other
### Relevant information
Three deployment templates have `global.extraVolumeMounts` in the container spec but are missing `global.extraVolumes` in the `volumes:` section. This causes global volume mounts to silently fail, Kubernetes ignores the volumeMount when no matching volume exists.
**Affected templates:**
| Template | `global.extraVolumeMounts` | `global.extraVolumes` |
|----------|---|---|
| `airbyte-server/deployment.yaml` | Present (L210-212) | **Missing** |
| `airbyte-connector-builder-server/deployment.yaml` | Present (L166-168) | **Missing** |
| `airbyte-temporal/deployment.yaml` | **Missing** | **Missing** |
**Working templates (for reference):**
`airbyte-worker/deployment.yaml` and `airbyte-workload-launcher/deployment.yaml` correctly include both `global.extraVolumeMounts` (in container spec) and `global.extraVolumes` (in volumes section).
**Example - `airbyte-server/deployment.yaml`:**
The volumeMounts section correctly includes global mounts:
```yaml
{{- if .Values.global.extraVolumeMounts }}
{{ toYaml .Values.global.extraVolumeMounts | nindent 8 }}
{{- end }}
```
But the volumes section only has component-level volumes, missing the global counterpart:
```yaml
{{- if .Values.server.extraVolumes }}
{{ toYaml .Values.server.extraVolumes | nindent 6 }}
{{- end }}
# Missing: global.extraVolumes block
```
**Fix** - add the following block after `{component}.extraVolumes` in each affected template's `volumes:` section:
```yaml
{{- if .Values.global.extraVolumes }}
{{ toYaml .Values.global.extraVolumes | nindent 6 }}
{{- end }}
```
And for `airbyte-temporal/deployment.yaml`, also add `global.extraVolumeMounts` in the container's `volumeMounts:` section:
```yaml
{{- if .Values.global.extraVolumeMounts }}
{{ toYaml .Values.global.extraVolumeMounts | nindent 8 }}
{{- end }}
```
**Steps to reproduce:**
1. Set `global.extraVolumes` and `global.extraVolumeMounts` in values.yaml to mount any ConfigMap or Secret
2. Deploy Airbyte with Helm Chart V2 (2.0.19)
3. Exec into the server, connector-builder-server, or temporal pods
4. The mounted file does not exist - the volume was silently ignored
**Impact:** We use `global.extraVolumes` to mount a `flags.yml` ConfigMap for feature flag configuration (heartbeat failSync). Without this fix, server, connector-builder-server, and temporal pods don't receive the feature flags file.
**Workaround:** Patch the 3 templates locally to add the missing `global.extraVolumes` / `global.extraVolumeMounts` blocks.
**Environment:**
- Kubernetes: GKE 1.33
- Helm Chart: V2 2.0.19
- Airbyte: 2.0.0 (community edition)
- Deployment method: Kustomize + ArgoCD
### Relevant log output
```shell
No error logs — Kubernetes silently ignores volumeMounts when the referenced volume does not exist in the pod spec. The file simply does not appear at the expected path.
```
---
**Internal Tracking:** https://github.com/airbytehq/oncall/issues/11240
Guida per i contributori
Apri la guida per i contributori
Valutazione
Questa issue non è ancora stata valutata.