From 9f702289fd7a6e879699264136bb76011882f34d Mon Sep 17 00:00:00 2001 From: Derek Date: Tue, 6 Oct 2026 19:12:23 +1100 Subject: [PATCH] docs: describe how transforms reach the pod today The chart has no init container and no download step. The wrapper reads transform YAML from config.transforms.dir (an empty directory the image creates at /etc/dfe-transform-vector/transforms) or from config.transforms.files. Fix the design diagram volumes and the chart parity table to match. Replace the migration notes on fetching transforms with that description, and drop the leftover mention of an artefact-store credential. --- docs/DESIGN.md | 6 +++--- docs/MIGRATION.md | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/DESIGN.md b/docs/DESIGN.md index 059ca4f..1389e4a 100644 --- a/docs/DESIGN.md +++ b/docs/DESIGN.md @@ -61,8 +61,8 @@ Vector is powerful but opaque. This wrapper makes it behave like every other DFE │ └────────────────────────────────────────────────────────────┘ │ │ │ │ Volumes: │ -│ • /etc/dfe/config.yaml (ConfigMap — big-dial config) │ -│ • /etc/dfe/transforms/ (init container — from Artifactory) │ +│ • /etc/dfe-transform-vector/config.yaml (ConfigMap, big dials) │ +│ • /etc/dfe-transform-vector/transforms/ (empty dir from image) │ │ • /var/run/vector/config/ (emptyDir — assembled Vector config) │ └──────────────────────────────────────────────────────────────────┘ ``` @@ -837,7 +837,7 @@ affinity: {} | Workload type | StatefulSet | StatefulSet | Deployment | | Health probes | /livez, /readyz | /livez, /readyz | /livez, /readyz | | Metrics port | 9090 | 9090 | 9090 | -| ConfigMap | config.yaml | config.yaml | config.yaml + transforms/ | +| ConfigMap | config.yaml | config.yaml | config.yaml | | PVC | data dir | data dir | None (Deployment) | | KEDA ScaledObject | Kafka lag | Kafka lag | Kafka lag | | PodMonitor | Yes | Yes | Yes | diff --git a/docs/MIGRATION.md b/docs/MIGRATION.md index 8287ea8..c419e66 100644 --- a/docs/MIGRATION.md +++ b/docs/MIGRATION.md @@ -90,7 +90,7 @@ keda: Key differences: -- **No inline VRL** — transforms are fetched by the init container from Artifactory +- **No inline VRL** — transforms are separate YAML files the wrapper loads from `config.transforms.dir` (the image's `/etc/dfe-transform-vector/transforms`) or lists in `config.transforms.files` - **No persistence** — Deployment (not StatefulSet), data dir loss just re-reads from Kafka - **SASL/TLS** inherited from `common.yaml` — only override pipeline-specific values - **KEDA** configured declaratively, inherits defaults from common.yaml @@ -102,10 +102,9 @@ Key differences: ### What Stays the Same -- **Secrets**: the chart creates none. The Kafka SASL secret and any artefact-store credential come from wherever your deployment already supplies them +- **Secrets**: the chart creates none. The Kafka SASL secret comes from wherever your deployment already supplies it - **KEDA TriggerAuthentication**: keeps pointing at the same Kafka credential secret - **Node placement**: set the chart's `nodeSelector` and `tolerations` to match your existing pool -- **Transform YAML delivery**: Same Artifactory ZIP download pattern via init container ### What Changes @@ -117,6 +116,7 @@ Key differences: | Health endpoint | `/health` on :8686 | `/livez`, `/readyz` on :9090, beside `/metrics` | | Metrics | Vector native on :9090 | Wrapper + merged Vector on :9090 | | Config format | Full Vector YAML (customConfig) | Big-dial config (source/sink/transforms) | +| Transform delivery | Inline VRL in `customConfig` | YAML files in `transforms.dir` or listed in `transforms.files`. The chart has no init container or download step: bake the files into your image or mount them at that path | | DAG wiring | Manual (inline in values) | Auto-wired by wrapper | | Hot-reload | Not supported | Poll-based file watcher + SIGHUP | | Crash recovery | K8s pod restart only | Wrapper restarts Vector with backoff |