-
Notifications
You must be signed in to change notification settings - Fork 360
[jaeger] Add support for podAnnotations to all-in-one deployment #739
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
f9963b6 to
baa033c
Compare
The legacy components such as query supported podAnnotations the same way the other components still do. This adds the podAnnotations field to the jaeger values section, following the same pattern already used by the spark, esIndexCleaner, esRollover, and esLookback job templates. Signed-off-by: Michael Jung <[email protected]>
baa033c to
49975a6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Adds configurable pod-level annotations for the Jaeger all-in-one Deployment so users can inject metadata required by service meshes and external scrapers.
Changes:
- Add
jaeger.podAnnotationsto chart values. - Render
jaeger.podAnnotationsinto the all-in-one Deployment pod template annotations. - Bump chart version and update
Chart.lock(Bitnamicommondependency lock).
Reviewed changes
Copilot reviewed 3 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| charts/jaeger/values.yaml | Introduces jaeger.podAnnotations value (and touches adjacent scheduling-related values). |
| charts/jaeger/templates/jaeger/jaeger-deploy.yaml | Injects jaeger.podAnnotations into pod template annotations for all-in-one. |
| charts/jaeger/Chart.yaml | Bumps chart version to 4.4.8. |
| charts/jaeger/Chart.lock | Updates locked common dependency version/digest/timestamp. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -212,6 +212,7 @@ jaeger: | |||
| tolerations: [] | |||
| affinity: {} | |||
| topologySpreadContraints: [] | |||
Copilot
AI
Feb 11, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
topologySpreadContraints is misspelled in values.yaml, but the templates reference .Values.jaeger.topologySpreadConstraints (with an extra “s”). As-is, user-provided values under this key won’t be picked up by the deployment. Rename the values key to topologySpreadConstraints (keeping a backwards-compat alias if you need to avoid a breaking change).
| topologySpreadContraints: [] | |
| topologySpreadConstraints: [] |
| prometheus.io/port: "8888" | ||
| prometheus.io/scrape: "true" | ||
| {{- if .Values.jaeger.podAnnotations }} | ||
| {{- toYaml .Values.jaeger.podAnnotations | nindent 8 }} | ||
| {{- end }} |
Copilot
AI
Feb 11, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Appending podAnnotations directly under annotations: can lead to duplicate YAML keys if a user sets something like prometheus.io/scrape in jaeger.podAnnotations, which can be rejected by some YAML parsers or behave inconsistently. Consider building a single annotations map (e.g., start with the hardcoded Prometheus annotations, merge in jaeger.podAnnotations with a defined precedence), then render it once to avoid duplicates.
| prometheus.io/port: "8888" | |
| prometheus.io/scrape: "true" | |
| {{- if .Values.jaeger.podAnnotations }} | |
| {{- toYaml .Values.jaeger.podAnnotations | nindent 8 }} | |
| {{- end }} | |
| {{- $podAnnotations := dict "prometheus.io/port" "8888" "prometheus.io/scrape" "true" -}} | |
| {{- if .Values.jaeger.podAnnotations }} | |
| {{- $podAnnotations = merge $podAnnotations .Values.jaeger.podAnnotations -}} | |
| {{- end }} | |
| {{- toYaml $podAnnotations | nindent 8 }} |
Summary
Currently, the
all-in-onedeployment template has a hardcodedannotationsblock. This prevents users from injecting critical metadata required by various ecosystem tools that rely on Pod-level annotations.Example Use Cases
consul.hashicorp.com/connect-injectto inject sidecar proxies for secure mTLS communication (e.g., securing OTLP traffic on TCP port 4317).Changes
podAnnotationsfield to the jaeger values section and its usage to theall-in-onedeployment templatequerysupportedpodAnnotationsthe same way the other components still do.Checklist