apache / apache/pinot

Support environment variable injection via Pinot helm chart.

Open
#6,815 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
6.1k
Forks
1.5k
Avg merge
1d 21h
Merged PRs (30d)
189

Description

The current Pinot helm chart does not provide a way to inject custom environment variables. Environment variables can be used as a substitute for config properties as well as templated table definitions and is already supported as part of the Pinot runtime.

Specifically we need to inject secrets for Pinot Basic Auth https://github.com/apache/incubator-pinot/pull/6613 as well custom Kafka credentials via table config [overrides](https://docs.pinot.apache.org/configuration-reference/table#environment-variables-override).

## Proposal
Add support for both `envFrom` and `extraEnv` for each statefulset. `envFrom` is useful for batch inject env from existing secrets or configMaps, while `extraEnv` can be used to add individual key values.

Example override:
```yaml
server:
envFrom:
- secretRef:
name: my-secrets
extraEnv:
- name: PINOT_CUSTOM_ENV_1
value: my-value-1
- name: PINOT_CUSTOM_ENV_2
value: my-value-2
```

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by locating the Pinot Helm chart values and StatefulSet templates, then trace how existing settings are rendered. Done means each StatefulSet accepts the proposed envFrom and extraEnv values and the rendered manifests contain them correctly.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
devops, infrastructure
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.