[artifactory] Expose podManagementPolicy and update PDB logic for HA deployments#2252
Open
joshuaauger wants to merge 2 commits intojfrog:masterfrom
Open
[artifactory] Expose podManagementPolicy and update PDB logic for HA deployments#2252joshuaauger wants to merge 2 commits intojfrog:masterfrom
joshuaauger wants to merge 2 commits intojfrog:masterfrom
Conversation
Artifactory StatefulSet and PDB via values.yaml.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]
[artifactory])What this PR does / why we need it:
Exposes
artifactory.podManagementPolicyinvalues.yaml(default:OrderedReady) so userscan set it to
Parallelto allow independent pod scaling and faster rolling restarts in HA deployments.Also updates the PDB logic in
artifactory-pdb.yaml— a PDB is now created when any ofpodManagementPolicy: Parallel,artifactory.minAvailable, orartifactory.maxUnavailableis set.When
Parallelis used ormaxUnavailableis explicitly provided, the PDB usesmaxUnavailable(defaulting to
1); otherwise it falls back tominAvailable. This ensures the PDB spec neverhas both fields set simultaneously, which is a Kubernetes constraint.
Which issue this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)format,will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
podManagementPolicyis an immutable field on a StatefulSet. Changing it on an existingdeployment requires deleting the StatefulSet with
--cascade=orphanbefore upgrading.This is called out in the README.
maxUnavailable/minAvailableswitching logic ensures only one of the two mutuallyexclusive fields is ever rendered in the PDB spec.