-
Notifications
You must be signed in to change notification settings - Fork 43
Add componentNames filter for volatileConfig criteria #3045
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Add optional componentNames field to allow filtering volatile config
include/exclude rules by component name from ApplicationSnapshot.
This allows filtering in scenarios where multiple components share the
same image repository.
Example usage:
```
volatileConfig:
exclude:
- value: "lint.has_failures"
componentNames: ["component1", "component2"]
```
**Depends on: github.com/conforma/crds with ComponentNames field
Ref: https://issues.redhat.com/browse/EC-1513
Assisted-by: Cursor (using claude-4.5-sonnet)
b410dce to
207bd33
Compare
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
||||||||||||||||||||||||
PR Code Suggestions ✨Explore these optional code suggestions:
|
||||||||||||
User description
Add an optional componentNames field to allow filtering volatile config include/exclude rules by component name from ApplicationSnapshot. This allows filtering in scenarios where multiple components share the same image repository.
Example usage:
** Depends on: conforma/crds#21 to be merged first (updated ECP CRD with the new ComponentNames field).
Ref: https://issues.redhat.com/browse/EC-1513
Assisted-by: Cursor (using claude-4.5-sonnet)
PR Type
Enhancement
Description
Add
ComponentNamefield toEvaluationTargetfor component-specific filteringImplement
componentItemsmap inCriteriato store component-name-based rulesUpdate
Criteria.get()method to merge component-specific and image-specific rulesPass component name through evaluation pipeline to filters and matchers
Add comprehensive tests for component-based volatile config filtering
Diagram Walkthrough
File Walkthrough
5 files
Add ComponentName field to EvaluationTarget structImplement component-based filtering in CriteriaPass component name through evaluation pipelineUpdate filter signatures to accept component nameExtract and pass component name to evaluator4 files
Add comprehensive tests for component filteringAdd integration test for component-based exclusionsUpdate filter tests with component name parameterAdd test verifying component name propagation