Validate render-drift targets with kubeconform, not byte equality#30
Merged
Conversation
…uality The render-drift action compared each freshly rendered adapter file against its committed counterpart with cmp, so any formatting, key-order, or comment difference registered as drift even when the Kubernetes objects were identical. Committed targets are now validated with kubeconform, reporting drift only on genuine schema violations rather than byte-level noise.
…tion kubeconform validates that the committed target is well-formed Kubernetes YAML; it does not compare the target against the freshly rendered output, so genuine drift went undetected. The action now compares canonicalised YAML (key order, formatting, and comments normalised) so real content drift is reported while cosmetic differences are not.
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.
The
deploy-config-render-driftaction compared each freshly renderedadapter file against its committed counterpart with
cmp, so anyformatting, key-order, or comment difference registered as drift even when
the rendered Kubernetes objects were identical. Committed targets are now
validated with kubeconform, reporting drift only on genuine schema
violations rather than byte-level noise. The loop structure and
drift_foundaccounting are unchanged.This mirrors the functional-validation change made in homelab-deploy's
render-drift path.