Open ShyamsundarR opened 3 years ago
Also, from a bundling perspective, it is possible to prevent install if we define nativeAPIs that we need to function correctly. This could be an intermediate step to ensure that the environment is as needed for the bundle to be installed.
It is not clear what Ensure` means for this issue - fail if the crds do not exist or install them if they do not exist?
What is the expected behavior of the system when the crds are missing?
It is not clear what Ensure` means for this issue - fail if the crds do not exist or install them if they do not exist?
Initially the thought as per the issue description was to perform a runtime check on dependent CRDs and fail/exit the reconciler/controller if found missing.
We should not attempt to install the CRDs at present, at least that is not the expectation.
What is the expected behavior of the system when the crds are missing?
Later as CSV can call out dependent APIs, the thought is to add the dependent CRDs here, which will prevent the install of Ramen itself on a cluster if dependent CRDs are missing.
For example dr-cluster should ensure VolumeReplication CRD and VolumeReplicationClass CRD and the rest are present as APIs in the cluster before starting the container to avoid CLBO errors like so:
Fix can be based on: https://github.com/csi-addons/volume-replication-operator/pull/108