Skip to content

Conversation

@m-dot-jung
Copy link

Summary

Currently, the all-in-one deployment template has a hardcoded annotations block. This prevents users from injecting critical metadata required by various ecosystem tools that rely on Pod-level annotations.

Example Use Cases

  • Consul Service Mesh: Requires consul.hashicorp.com/connect-inject to inject sidecar proxies for secure mTLS communication (e.g., securing OTLP traffic on TCP port 4317).
  • Custom Metrics Scrapers: While Prometheus annotations are hardcoded, users may have custom scraping requirements or use alternative observability platforms (like Datadog or New Relic) that require specific pod-level tags.

Changes

  • This adds the podAnnotations field to the jaeger values section and its usage to the all-in-one deployment template
  • Ensured usage of the same pattern as the spark, esIndexCleaner, esRollover, and esLookback job templates.
  • The legacy components such as query supported podAnnotations the same way the other components still do.

Checklist

  • helm lint charts/jaeger passes
  • helm template renders correctly with default values (no extra extra annotations on pod level)
  • helm template renders correctly with extra annotations set (pod annotations appear in output)
  • CI values files render cleanly

Copilot AI review requested due to automatic review settings February 11, 2026 15:48
@m-dot-jung m-dot-jung marked this pull request as draft February 11, 2026 15:49
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]>
Copy link

Copilot AI left a 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.podAnnotations to chart values.
  • Render jaeger.podAnnotations into the all-in-one Deployment pod template annotations.
  • Bump chart version and update Chart.lock (Bitnami common dependency 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: []
Copy link

Copilot AI Feb 11, 2026

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).

Suggested change
topologySpreadContraints: []
topologySpreadConstraints: []

Copilot uses AI. Check for mistakes.
Comment on lines 34 to +38
prometheus.io/port: "8888"
prometheus.io/scrape: "true"
{{- if .Values.jaeger.podAnnotations }}
{{- toYaml .Values.jaeger.podAnnotations | nindent 8 }}
{{- end }}
Copy link

Copilot AI Feb 11, 2026

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.

Suggested change
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 }}

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants