-
Story
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
Product / Portfolio Work
-
False
-
-
False
-
3
-
None
-
None
-
Squirtle Sprint 279
Apply jsonschema validation to BundleConfig (which should only contain the `watchNamespace` parameter). The jsonschema will need to be generated based on the install modes supported by the bundle:
| All | Single | Own | Multi | WatchNamespace |
|---|---|---|---|---|
| Y | N | N | * | no parameter (if set error) |
| Y | Y | N | * | optional |
| Y | N | Y | * | no parameter (if set must be install namespace) |
| N | Y | N | * | required |
| N | Y | Y | * | optional |
| N | N | Y | * | no parameter |
| N | N | N | * | undefined: bundle is invalid / not supported |
Note: The mental model for the configuration is that the bundle will define its configuration schema. For registry+v1 this schema will be driven by the install modes supported by the bundle. For instance, if the bundle only supports AllNamespaces mode, it won't have a watchNamespace configuration parameter, if it only supports SingleNamespace, then watchNamespace is a required parameter, etc.
A/C:
- watchNamespace configuration is validated as above
- no configuration is given at all and validation succeeds, ensure defaults are used (as in
OPRUN-4090) - this is especially important for the OwnNamespace only case where watchNamespace is not a configuration parameter
- BundleConfiguration will also include OLMv0's SubscriptionConfig in future. So, the solution should allow for this.