[RFC] ServiceSpec validation health check#36393
[RFC] ServiceSpec validation health check#36393mgfritch wants to merge 3 commits intoceph:masterfrom
Conversation
report a health check error when a ServiceSpec contained in the spec store fails validation Signed-off-by: Michael Fritch <mfritch@suse.com>
- allow ctor of a ServiceSpec to succeed - explicitly validate the spec during spec_store save (apply service, migrate, etc.) Signed-off-by: Michael Fritch <mfritch@suse.com>
|
jenkins test make check |
| self.spec.validate() | ||
| try: | ||
| self.spec.validate() | ||
| except Exception as e: | ||
| raise ServiceSpecValidationError(str(e)) |
There was a problem hiding this comment.
any thoughts how to better pickle these exceptions so there in not a need to catch/rethrow?
|
This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days. |
|
unstale |
|
This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved |
|
ping? |
| spec_errors = [] | ||
| for service_name, spec in self.spec_store.specs.items(): | ||
| try: | ||
| spec.validate() |
There was a problem hiding this comment.
from ceph.deplo... import ServiceSpec
ServiceSpec.validate(spec)should circumvent the sub-interpereter issues
|
This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days. |
|
unstale |
|
Actually I'm -1 here. In case we have invalid specs in our store, we should bail out and let users report a bug instead of adding a new kind of health warning. |
report a health check error when a ServiceSpec contained in the spec store fails validation
Signed-off-by: Michael Fritch mfritch@suse.com
Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard backendjenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume tox