feat: support explicit HyperDX Deployment and pod annotations - #255
feat: support explicit HyperDX Deployment and pod annotations#255mfroembgen wants to merge 4 commits into
Conversation
🦋 Changeset detectedLatest commit: cac526f The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
6e59624 to
dd4a55b
Compare
There was a problem hiding this comment.
Pull request overview
This PR updates the ClickStack Helm chart’s HyperDX Deployment templating to support explicit annotation maps for the Deployment object (metadata.annotations) vs the pod template (spec.template.metadata.annotations), while preserving the existing legacy value as a deprecated alias for backward compatibility.
Changes:
- Add
hyperdx.deployment.deploymentAnnotations(Deployment metadata) andhyperdx.deployment.podAnnotations(pod template metadata) tovalues.yaml. - Update the HyperDX Deployment template to render Deployment annotations separately and to merge legacy pod annotations with
podAnnotationstaking precedence on key conflicts. - Expand helm-unittest coverage to validate separation and precedence behavior, and add a Changeset entry.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| charts/clickstack/values.yaml | Documents and introduces explicit deploymentAnnotations and podAnnotations values plus a deprecated legacy alias. |
| charts/clickstack/tests/hyperdx-deployment_test.yaml | Adds/updates unit tests validating default behavior, separation of annotation surfaces, and precedence of podAnnotations. |
| charts/clickstack/templates/hyperdx/deployment.yaml | Implements Deployment-level annotations and merged pod-template annotations with explicit precedence. |
| .changeset/expose-hyperdx-deployment-annotations.md | Records the user-facing chart change as a minor release via Changesets. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| example.com/configuration: explicit | ||
| example.com/legacy: preserved | ||
|
|
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Summary
hyperdx.deployment.deploymentAnnotationsfor HyperDX Deployment metadatahyperdx.deployment.podAnnotationsfor HyperDX pod-template metadatahyperdx.deployment.annotationsas a deprecated compatibility aliaspodAnnotationswins on duplicate legacy keysMotivation
The existing
hyperdx.deployment.annotationsvalue configuresspec.template.metadata.annotations, but its scope is ambiguous and there is no value for the Deployment object'smetadata.annotations. Explicit names make both Kubernetes metadata surfaces clear without breaking existing installations.Backward compatibility
The new values default to empty maps. Existing
hyperdx.deployment.annotationsvalues continue to render on the pod template. When bothannotationsandpodAnnotationscontain the same key, the explicitpodAnnotationsvalue takes precedence; non-conflicting legacy annotations are preserved.Test plan
helm unittest charts/clickstack— 28 suites, 190 tests passhelm lint charts/clickstackgit diff --checkFixes #254.