Remove Ceph-CSI default settings from Rook such that default settings fully owned by Ceph-CSI operator
Is this a bug report or feature request?
- Feature Request
What should the feature do: Since Rook v1.20, responsibility of CephCSI configuration shifted fully to the Ceph-CSI operator. Still, Rook retained the recommended default images in a configmap defined by Rook. This configmap can be customized if the user wants to load the images from a different repo or version.
To improve the default scenario, Rook should not define the default images in the configmap. The CephCSI operator should only define the defaults.
The proposal is: for the CephCSI operator to be responsible for:
- Define default images in code.
- The configmap for images is optional. If found, it will override the default images defined in code.
- Whenever there is a new CephCSI release (or any updated sidecar images), CephCSI operator will update its code defaults and release a new patch of CephCSI operator.
- If the user desired to override the defaults, they can set the configmap name in the operatorConfig CR, and set their custom image repo/tags.
This is already the behavior of CephCSI operator today, no changes needed there.
Rook requires changes to move the defaults out of Rook:
- Remove the configmap
rook-csi-operator-image-set-configmapfrom Rook (operator.yaml and helm config). - Remove the csi and sidecar image settings from the rook-ceph chart values.yaml
- Rook users installing the ceph-csi-drivers helm chart no longer require the config to override the configmap (unless they want to override the defaults).
deploy/examples/images.txt: Still should include the csi images and sidecars, the makefile will just need updating for the new source from csi operator.- Let's consider deleting the configmap during upgrade, and if they want to override the defaults they need to specify a different configmap.
- The v1.21 upgrade guide should be clear about how to override the defaults since we are removing the old configmap.
@Madhu-1 @subhamkrai Anything to add?
What is use case behind this feature: Proper ownership of ceph-csi defaults in the ceph-csi operator.
Source: rook/rook