Skip to content

feat(helm): add deploymentAnnotations and podDisruptionBudget - #73

Open
anthonyhaussman wants to merge 1 commit into
kagent-dev:mainfrom
anthonyhaussman:tone/feat/helm-pdb-annotations
Open

anthonyhaussman wants to merge 1 commit into
kagent-dev:mainfrom
anthonyhaussman:tone/feat/helm-pdb-annotations

Conversation

@anthonyhaussman

Copy link
Copy Markdown

Description

Helm Deployment Template

Add deployment-level annotations support to metadata in deployment manifest.
Allow users to attach tooling and controller annotations directly to the Deployment resource.

PodDisruptionBudget Resource

Introduce policy/v1 PodDisruptionBudget template with configurable availability targets and eviction policies.
Ensure high availability during voluntary disruptions and cluster maintenance operations.

Chart Values and Unit Tests

Define default configurations in values.yaml and add comprehensive test suites covering custom deployment annotations and PDB rendering variants.
Prevent regression and guarantee template validation across optional configuration branches.

Support custom deployment metadata annotations and
configurable PodDisruptionBudget for kagent-tools.

Assisted-by: Gemini 3.7 Flash
Signed-off-by: Anthony Hausman <anthonyhaussmann@gmail.com>
@dimetron

Copy link
Copy Markdown
Collaborator

Thanks for this! Review found a few PDB edge cases, addressed in #106 (builds on this PR's commit, rebased on main):

  • if .Values.podDisruptionBudget.minAvailable drops 0, so maxUnavailable: 0 renders a PDB with no budget → switched to hasKey.
  • Setting both minAvailable and maxUnavailable renders an object the API server rejects; setting neither renders an empty budget → template now fails in both cases (same behaviour as kagent's controller-pdb.yaml).
  • Added tests for these cases and a values.yaml note that minAvailable: 1 with replicaCount: 1 blocks node drains.

Feel free to cherry-pick the commit here, or we can merge #106 in place of this one.

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