Merge pull request #12830 from rook/mergify/bp/release-1.12/pr-12487

csi: enable csi-addons-side when crds are deployed (backport #12487)
This commit is contained in:
Travis Nielsen authored and GitHub committed 2023-09-05 08:33:34 -06:00
commit a4114f1292
3 files changed
+24 -7

No files matched your search

+7
View File
@@ -30,6 +30,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/reconcile"
"sigs.k8s.io/controller-runtime/pkg/source"
addonsv1alpha1 "github.com/csi-addons/kubernetes-csi-addons/apis/csiaddons/v1alpha1"
"github.com/pkg/errors"
"github.com/rook/rook/pkg/clusterd"
opcontroller "github.com/rook/rook/pkg/operator/ceph/controller"
@@ -89,6 +90,12 @@ func add(ctx context.Context, mgr manager.Manager, r reconcile.Reconciler, opCon
}
logger.Infof("%s successfully started", controllerName)
// Add CSIAddons client to controller mgr
err = addonsv1alpha1.AddToScheme(mgr.GetScheme())
if err != nil {
return err
}
// Watch for ConfigMap (operator config)
configmapKind := source.Kind(mgr.GetCache(),
&v1.ConfigMap{TypeMeta: metav1.TypeMeta{Kind: "ConfigMap", APIVersion: v1.SchemeGroupVersion.String()}})
+9 -6
View File
@@ -31,6 +31,7 @@ import (
"github.com/rook/rook/pkg/operator/test"
"github.com/stretchr/testify/assert"
v1 "k8s.io/api/core/v1"
apifake "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/fake"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
@@ -105,8 +106,9 @@ func TestCephCSIController(t *testing.T) {
fakeClientSet := test.New(t, 1)
test.SetFakeKubernetesVersion(fakeClientSet, "v1.21.0")
c := &clusterd.Context{
Clientset: fakeClientSet,
RookClientset: rookclient.NewSimpleClientset(),
Clientset: fakeClientSet,
RookClientset: rookclient.NewSimpleClientset(),
ApiExtensionsClient: apifake.NewSimpleClientset(),
}
_, err := c.Clientset.CoreV1().Pods(namespace).Create(ctx, test.FakeOperatorPod(namespace), metav1.CreateOptions{})
assert.NoError(t, err)
@@ -128,7 +130,7 @@ func TestCephCSIController(t *testing.T) {
},
}
s := scheme.Scheme
s.AddKnownTypes(cephv1.SchemeGroupVersion, &cephv1.CephCluster{}, &cephv1.CephClusterList{})
s.AddKnownTypes(cephv1.SchemeGroupVersion, &cephv1.CephCluster{}, &cephv1.CephClusterList{}, &v1.ConfigMap{})
object := []runtime.Object{
cephCluster,
@@ -160,8 +162,9 @@ func TestCephCSIController(t *testing.T) {
fakeClientSet := test.New(t, 1)
test.SetFakeKubernetesVersion(fakeClientSet, "v1.21.0")
c := &clusterd.Context{
Clientset: fakeClientSet,
RookClientset: rookclient.NewSimpleClientset(),
Clientset: fakeClientSet,
RookClientset: rookclient.NewSimpleClientset(),
ApiExtensionsClient: apifake.NewSimpleClientset(),
}
_, err := c.Clientset.CoreV1().Pods(namespace).Create(ctx, test.FakeOperatorPod(namespace), metav1.CreateOptions{})
assert.NoError(t, err)
@@ -205,7 +208,7 @@ func TestCephCSIController(t *testing.T) {
_, err = c.Clientset.CoreV1().Secrets(namespace).Create(ctx, secret, metav1.CreateOptions{})
assert.NoError(t, err)
s := scheme.Scheme
s.AddKnownTypes(cephv1.SchemeGroupVersion, &cephv1.CephCluster{}, &cephv1.CephClusterList{})
s.AddKnownTypes(cephv1.SchemeGroupVersion, &cephv1.CephCluster{}, &cephv1.CephClusterList{}, &v1.ConfigMap{})
object := []runtime.Object{
cephCluster,
+8 -1
View File
@@ -176,7 +176,14 @@ func (r *ReconcileCSI) setParams(ver *version.Info) error {
}
CSIParam.EnableCSIAddonsSideCar = false
if strings.EqualFold(k8sutil.GetValue(r.opConfig.Parameters, "CSI_ENABLE_CSIADDONS", "false"), "true") {
_, err = r.context.ApiExtensionsClient.ApiextensionsV1().CustomResourceDefinitions().Get(r.opManagerContext, "csiaddonsnode.csiaddons.openshift.io", metav1.GetOptions{})
if err == nil {
CSIParam.EnableCSIAddonsSideCar = true
}
if strings.EqualFold(k8sutil.GetValue(r.opConfig.Parameters, "CSI_ENABLE_CSIADDONS", ""), "false") {
CSIParam.EnableCSIAddonsSideCar = false
}
if strings.EqualFold(k8sutil.GetValue(r.opConfig.Parameters, "CSI_ENABLE_CSIADDONS", ""), "true") {
CSIParam.EnableCSIAddonsSideCar = true
}