ROX-33361: Per-namespace persistence for process indicators#19957
ROX-33361: Per-namespace persistence for process indicators#19957
Conversation
🚀 Build Images ReadyImages are ready for commit 405c8cf. To use with deploy scripts: export MAIN_IMAGE_TAG=4.11.x-688-g405c8cf703 |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #19957 +/- ##
==========================================
+ Coverage 49.67% 49.69% +0.01%
==========================================
Files 2765 2766 +1
Lines 209049 209175 +126
==========================================
+ Hits 103847 103950 +103
- Misses 97523 97538 +15
- Partials 7679 7687 +8
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
680576b to
e2ec42b
Compare
|
/test ocp-4-21-qa-e2e-tests |
57f2aa8 to
cad5788
Compare
|
The only failing tests are flake #19959 |
eda56d2 to
f03bc24
Compare
|
/retest |
|
@erthalion: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
ef495a3 to
714aadb
Compare
Allow to configure per-namespace persistence for process indicators, so
that Central wouldn't need to store information, which never will be used.
It could be configured via DynamicConfig of the cluster configuration in
the form:
```
message ProcessIndicators {
bool no_persistence = 1;
string exclude_namespace_filter = 2;
bool exclude_openshift_ns = 3;
}
```
Where `exclude_namespace_filter` allows to specify a custom regex to
filter out processes by matching namespace, `exclude_openshift_ns`
instructs Central to exclude anything from openshift-* namespaces, and
`no_persistence` can be used to disable storing process indicators at all.
714aadb to
7f1e4bd
Compare
Commit 405c8cf ("ROX-33361: Per-namespace persistence for process indicators (#19957)") has introduced a possibility to configure per-namespace persistence for process indicators, but did not wire it up anywhere. Allow to provide new dynamic config fields via SecuredCluster CR, in the form: spec: processIndicators: persistence: true excludeNamespaceFilter: namespace-without-persistence excludeOpenshiftNs: false It works in exactly the same way as above mentioned dynamic config counterpart, except the reversed "persistence" field. Contrary to a protobuf dynamic config, SecuredCluster CR allows to distinguish not set values, thus we choose more natural to read version. It will be converted into the "noPersistence" during translation.
Commit 405c8cf ("ROX-33361: Per-namespace persistence for process indicators (#19957)") has introduced a possibility to configure per-namespace persistence for process indicators, but did not wire it up anywhere. Allow to provide new dynamic config fields via SecuredCluster CR, in the form: spec: processIndicators: persistence: true excludeNamespaceFilter: namespace-without-persistence excludeOpenshiftNs: false It works in exactly the same way as above mentioned dynamic config counterpart, except the reversed "persistence" field. Contrary to a protobuf dynamic config, SecuredCluster CR allows to distinguish not set values, thus we choose more natural to read version. It will be converted into the "noPersistence" during translation.
Description
NOTE: It's been split from #19455, for the purposes of simplifying the review. The PR contains only the first commit, introducing the actual machinery. The implementation is exactly the same as in the original PR.
Allow to configure per-namespace persistence for process indicators, so that Central wouldn't need to store information, which never will be used.
It could be configured via DynamicConfig of the cluster configuration in the form:
Where
namespace_filterallows to specify a custom regex to filter out processes by matching namespace,exclude_openshift_nsinstructs Central to exclude anything from openshift-* namespaces, andpersistencecan be used to disable storing process indicators at all.User-facing documentation
Testing and quality
Automated testing
How I validated my change
Manual validation (creating an operator-managed cluster and modifying the configuration), as well as E2E tests. Split from #19455 to simplify the review.