From cdd655ed3f257a0a008315ac1364c66fc8130ec6 Mon Sep 17 00:00:00 2001 From: Yuma Ogami Date: Wed, 28 Feb 2024 08:33:08 +0000 Subject: [PATCH 1/5] osd: delete the key file deletion in encryption open init containers The key file deletion process is in the shell script commonly used by all of encryption-open, encryption-open-metadata, and encryption-open-wal init containers. The key file is deleted at the encryption-open init container and encryption-open-metadata and encryption-open-wal init containers are failed to open the key file. The key file is in the /etc/ceph folder. Unless that folder is shared, the key file anyway won't be available in the other init containers even if it is not deleted by these init containers. And it will naturally anyway be deleted after the init containers are completed. So The key file deletion process in shell scripts is unnecessary. Fixes: #13737 Signed-off-by: Yuma Ogami --- pkg/operator/ceph/cluster/osd/spec.go | 1 - 1 file changed, 1 deletion(-) diff --git a/pkg/operator/ceph/cluster/osd/spec.go b/pkg/operator/ceph/cluster/osd/spec.go index d7ca5b12b185..7f96c8ea2120 100644 --- a/pkg/operator/ceph/cluster/osd/spec.go +++ b/pkg/operator/ceph/cluster/osd/spec.go @@ -224,7 +224,6 @@ dmsetup version function open_encrypted_block { echo "Opening encrypted device $BLOCK_PATH at $DM_PATH" cryptsetup luksOpen --verbose --disable-keyring --allow-discards --key-file "$KEY_FILE_PATH" "$BLOCK_PATH" "$DM_NAME" - rm -f "$KEY_FILE_PATH" } # This is done for upgraded clusters that did not have the subsystem and label set by the prepare job From 6ec10841819f4fa27a4d76116525505fd7099de8 Mon Sep 17 00:00:00 2001 From: piao Date: Wed, 20 Mar 2024 06:20:35 +0000 Subject: [PATCH 2/5] operator: remove PdbV1Beta1 check as k8s 1.25 doesnt support it Signed-off-by: piao --- pkg/operator/ceph/cluster/mgr/drain.go | 45 +------ pkg/operator/ceph/cluster/mgr/drain_test.go | 37 +----- pkg/operator/ceph/cluster/mgr/mgr_test.go | 3 - pkg/operator/ceph/cluster/mon/drain.go | 18 --- pkg/operator/ceph/cluster/mon/drain_test.go | 54 +------- .../ceph/disruption/clusterdisruption/add.go | 73 +++-------- .../ceph/disruption/clusterdisruption/osd.go | 117 +----------------- .../disruption/clusterdisruption/osd_test.go | 16 --- .../disruption/clusterdisruption/pools.go | 44 +------ .../clusterdisruption/static_pdb.go | 15 +-- pkg/operator/k8sutil/k8sutil.go | 12 -- 11 files changed, 33 insertions(+), 401 deletions(-) diff --git a/pkg/operator/ceph/cluster/mgr/drain.go b/pkg/operator/ceph/cluster/mgr/drain.go index 6671220ccfb4..0f91fcffd4d7 100644 --- a/pkg/operator/ceph/cluster/mgr/drain.go +++ b/pkg/operator/ceph/cluster/mgr/drain.go @@ -20,7 +20,6 @@ import ( "github.com/pkg/errors" "github.com/rook/rook/pkg/operator/k8sutil" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" kerrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" @@ -34,10 +33,6 @@ const ( func (c *Cluster) reconcileMgrPDB() error { var maxUnavailable int32 = 1 - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(c.context.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } objectMeta := metav1.ObjectMeta{ Name: mgrPDBName, Namespace: c.clusterInfo.Namespace, @@ -45,23 +40,6 @@ func (c *Cluster) reconcileMgrPDB() error { selector := &metav1.LabelSelector{ MatchLabels: map[string]string{k8sutil.AppAttr: AppName}, } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - } - mutateFunc := func() error { - pdb.Spec = policyv1beta1.PodDisruptionBudgetSpec{ - Selector: selector, - MaxUnavailable: &intstr.IntOrString{IntVal: maxUnavailable}, - } - return nil - } - op, err := controllerutil.CreateOrUpdate(c.clusterInfo.Context, c.context.Client, pdb, mutateFunc) - if err != nil { - return errors.Wrapf(err, "failed to reconcile mgr pdb on op %q", op) - } - return nil - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, } @@ -81,29 +59,8 @@ func (c *Cluster) reconcileMgrPDB() error { func (c *Cluster) deleteMgrPDB() { pdbRequest := types.NamespacedName{Name: mgrPDBName, Namespace: c.clusterInfo.Namespace} - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(c.context.Clientset) - if err != nil { - logger.Errorf("failed to fetch pdb version. %v", err) - return - } - if usePDBV1Beta1 { - mgrPDB := &policyv1beta1.PodDisruptionBudget{} - err := c.context.Client.Get(c.clusterInfo.Context, pdbRequest, mgrPDB) - if err != nil { - if !kerrors.IsNotFound(err) { - logger.Errorf("failed to get mgr pdb %q. %v", mgrPDBName, err) - } - return - } - logger.Debugf("ensuring the mgr pdb %q is deleted", mgrPDBName) - err = c.context.Client.Delete(c.clusterInfo.Context, mgrPDB) - if err != nil { - logger.Errorf("failed to delete mgr pdb %q. %v", mgrPDBName, err) - return - } - } mgrPDB := &policyv1.PodDisruptionBudget{} - err = c.context.Client.Get(c.clusterInfo.Context, pdbRequest, mgrPDB) + err := c.context.Client.Get(c.clusterInfo.Context, pdbRequest, mgrPDB) if err != nil { if !kerrors.IsNotFound(err) { logger.Errorf("failed to get mgr pdb %q. %v", mgrPDBName, err) diff --git a/pkg/operator/ceph/cluster/mgr/drain_test.go b/pkg/operator/ceph/cluster/mgr/drain_test.go index 1686fb7cf661..166cbc8bcbf2 100644 --- a/pkg/operator/ceph/cluster/mgr/drain_test.go +++ b/pkg/operator/ceph/cluster/mgr/drain_test.go @@ -27,7 +27,6 @@ import ( "github.com/rook/rook/pkg/operator/test" "github.com/stretchr/testify/assert" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "sigs.k8s.io/controller-runtime/pkg/client/fake" @@ -42,8 +41,6 @@ func createFakeCluster(t *testing.T, cephClusterObj *cephv1.CephCluster, k8sVers scheme := scheme.Scheme err := policyv1.AddToScheme(scheme) assert.NoError(t, err) - err = policyv1beta1.AddToScheme(scheme) - assert.NoError(t, err) cl := fake.NewClientBuilder().WithScheme(scheme).WithRuntimeObjects().Build() clientset := test.New(t, 3) @@ -77,21 +74,9 @@ func TestReconcileMgrPDB(t *testing.T) { errorExpected: false, } - // check for PDBV1Beta1 version - c := createFakeCluster(t, testCases.cephCluster, "v1.20.0") - err := c.reconcileMgrPDB() - assert.NoError(t, err) - existingPDBV1Beta1 := &policyv1beta1.PodDisruptionBudget{} - err = c.context.Client.Get(context.TODO(), types.NamespacedName{Name: mgrPDBName, Namespace: mockNamespace}, existingPDBV1Beta1) - if testCases.errorExpected { - assert.Error(t, err) - } - assert.NoError(t, err) - assert.Equalf(t, testCases.expectedMaxUnAvailable, int32(existingPDBV1Beta1.Spec.MaxUnavailable.IntValue()), "[%s]: incorrect minAvailable count in pdb", testCases.name) - // check for PDBV1 version - c = createFakeCluster(t, testCases.cephCluster, "v1.21.0") - err = c.reconcileMgrPDB() + c := createFakeCluster(t, testCases.cephCluster, "v1.21.0") + err := c.reconcileMgrPDB() assert.NoError(t, err) existingPDBV1 := &policyv1.PodDisruptionBudget{} err = c.context.Client.Get(context.TODO(), types.NamespacedName{Name: mgrPDBName, Namespace: mockNamespace}, existingPDBV1) @@ -127,22 +112,4 @@ func TestDeleteMgrPDB(t *testing.T) { err = c.context.Client.Get(context.TODO(), fakeNamespaceName, existingPDBV1) assert.Error(t, err) - // check for PDBV1Beta1 version - c = createFakeCluster(t, &cephv1.CephCluster{ - Spec: cephv1.ClusterSpec{ - DisruptionManagement: cephv1.DisruptionManagementSpec{ - ManagePodBudgets: true, - }, - }, - }, "v1.20.0") - err = c.reconcileMgrPDB() - assert.NoError(t, err) - existingPDBV1Beta1 := &policyv1beta1.PodDisruptionBudget{} - // mgr PDB exist - err = c.context.Client.Get(context.TODO(), fakeNamespaceName, existingPDBV1Beta1) - assert.NoError(t, err) - c.deleteMgrPDB() - // mgr PDB deleted - err = c.context.Client.Get(context.TODO(), fakeNamespaceName, existingPDBV1Beta1) - assert.Error(t, err) } diff --git a/pkg/operator/ceph/cluster/mgr/mgr_test.go b/pkg/operator/ceph/cluster/mgr/mgr_test.go index c007b31170fa..e2b30b619c52 100644 --- a/pkg/operator/ceph/cluster/mgr/mgr_test.go +++ b/pkg/operator/ceph/cluster/mgr/mgr_test.go @@ -39,7 +39,6 @@ import ( apps "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" kerrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "sigs.k8s.io/controller-runtime/pkg/client/fake" @@ -65,8 +64,6 @@ func createNewCluster(t *testing.T) *Cluster { scheme := scheme.Scheme err := policyv1.AddToScheme(scheme) assert.NoError(t, err) - err = policyv1beta1.AddToScheme(scheme) - assert.NoError(t, err) cl := fake.NewClientBuilder().WithScheme(scheme).WithRuntimeObjects().Build() ctx := &clusterd.Context{ diff --git a/pkg/operator/ceph/cluster/mon/drain.go b/pkg/operator/ceph/cluster/mon/drain.go index 08e8b511a1ec..61d90418d081 100644 --- a/pkg/operator/ceph/cluster/mon/drain.go +++ b/pkg/operator/ceph/cluster/mon/drain.go @@ -20,7 +20,6 @@ import ( "github.com/pkg/errors" "github.com/rook/rook/pkg/operator/k8sutil" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/intstr" @@ -51,10 +50,6 @@ func (c *Cluster) reconcileMonPDB() error { } func (c *Cluster) createOrUpdateMonPDB(maxUnavailable int32) (controllerutil.OperationResult, error) { - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(c.context.Clientset) - if err != nil { - return controllerutil.OperationResultNone, errors.Wrap(err, "failed to fetch pdb version") - } objectMeta := metav1.ObjectMeta{ Name: monPDBName, Namespace: c.Namespace, @@ -62,19 +57,6 @@ func (c *Cluster) createOrUpdateMonPDB(maxUnavailable int32) (controllerutil.Ope selector := &metav1.LabelSelector{ MatchLabels: map[string]string{k8sutil.AppAttr: AppName}, } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta} - - mutateFunc := func() error { - pdb.Spec = policyv1beta1.PodDisruptionBudgetSpec{ - Selector: selector, - MaxUnavailable: &intstr.IntOrString{IntVal: maxUnavailable}, - } - return nil - } - return controllerutil.CreateOrUpdate(c.ClusterInfo.Context, c.context.Client, pdb, mutateFunc) - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta} diff --git a/pkg/operator/ceph/cluster/mon/drain_test.go b/pkg/operator/ceph/cluster/mon/drain_test.go index c2024d965e05..d01101ff3a7e 100644 --- a/pkg/operator/ceph/cluster/mon/drain_test.go +++ b/pkg/operator/ceph/cluster/mon/drain_test.go @@ -27,7 +27,6 @@ import ( "github.com/rook/rook/pkg/operator/test" "github.com/stretchr/testify/assert" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "sigs.k8s.io/controller-runtime/pkg/client/fake" @@ -43,8 +42,6 @@ func createFakeCluster(t *testing.T, cephClusterObj *cephv1.CephCluster, k8sVers scheme := scheme.Scheme err := policyv1.AddToScheme(scheme) assert.NoError(t, err) - err = policyv1beta1.AddToScheme(scheme) - assert.NoError(t, err) cl := fake.NewClientBuilder().WithScheme(scheme).WithRuntimeObjects().Build() clientset := test.New(t, 3) @@ -108,22 +105,10 @@ func TestReconcileMonPDB(t *testing.T) { } for _, tc := range testCases { - // check for PDBV1Beta1 version - c := createFakeCluster(t, tc.cephCluster, "v1.20.0") - err := c.reconcileMonPDB() - assert.NoError(t, err) - existingPDBV1Beta1 := &policyv1beta1.PodDisruptionBudget{} - err = c.context.Client.Get(context.TODO(), types.NamespacedName{Name: monPDBName, Namespace: mockNamespace}, existingPDBV1Beta1) - if tc.errorExpected { - assert.Error(t, err) - continue - } - assert.NoError(t, err) - assert.Equalf(t, tc.expectedMaxUnAvailable, int32(existingPDBV1Beta1.Spec.MaxUnavailable.IntValue()), "[%s]: incorrect minAvailable count in pdb", tc.name) // check for PDBV1 version - c = createFakeCluster(t, tc.cephCluster, "v1.21.0") - err = c.reconcileMonPDB() + c := createFakeCluster(t, tc.cephCluster, "v1.21.0") + err := c.reconcileMonPDB() assert.NoError(t, err) existingPDBV1 := &policyv1.PodDisruptionBudget{} err = c.context.Client.Get(context.TODO(), types.NamespacedName{Name: monPDBName, Namespace: mockNamespace}, existingPDBV1) @@ -159,23 +144,7 @@ func TestAllowMonDrain(t *testing.T) { assert.NoError(t, err) assert.Equal(t, 1, int(existingPDBV1.Spec.MaxUnavailable.IntValue())) }) - // check for PDBV1Beta1 version - c = createFakeCluster(t, &cephv1.CephCluster{ - Spec: cephv1.ClusterSpec{ - DisruptionManagement: cephv1.DisruptionManagementSpec{ - ManagePodBudgets: true, - }, - }, - }, "v1.20.0") - t.Run("allow mon drain for K8s version v1.20.0", func(t *testing.T) { - // change MaxUnavailable mon PDB to 1 - err := c.allowMonDrain(fakeNamespaceName) - assert.NoError(t, err) - existingPDBV1Beta1 := &policyv1beta1.PodDisruptionBudget{} - err = c.context.Client.Get(context.TODO(), fakeNamespaceName, existingPDBV1Beta1) - assert.NoError(t, err) - assert.Equal(t, 1, int(existingPDBV1Beta1.Spec.MaxUnavailable.IntValue())) - }) + } func TestBlockMonDrain(t *testing.T) { @@ -197,21 +166,4 @@ func TestBlockMonDrain(t *testing.T) { assert.NoError(t, err) assert.Equal(t, 0, int(existingPDBV1.Spec.MaxUnavailable.IntValue())) }) - // check for PDBV1Beta1 version - c = createFakeCluster(t, &cephv1.CephCluster{ - Spec: cephv1.ClusterSpec{ - DisruptionManagement: cephv1.DisruptionManagementSpec{ - ManagePodBudgets: true, - }, - }, - }, "v1.20.0") - t.Run("block mon drain for K8s version v1.20.0", func(t *testing.T) { - // change MaxUnavailable mon PDB to 0 - err := c.blockMonDrain(fakeNamespaceName) - assert.NoError(t, err) - existingPDBV1Beta1 := &policyv1beta1.PodDisruptionBudget{} - err = c.context.Client.Get(context.TODO(), fakeNamespaceName, existingPDBV1Beta1) - assert.NoError(t, err) - assert.Equal(t, 0, int(existingPDBV1Beta1.Spec.MaxUnavailable.IntValue())) - }) } diff --git a/pkg/operator/ceph/disruption/clusterdisruption/add.go b/pkg/operator/ceph/disruption/clusterdisruption/add.go index a069c7104075..fbb1ba2ae009 100644 --- a/pkg/operator/ceph/disruption/clusterdisruption/add.go +++ b/pkg/operator/ceph/disruption/clusterdisruption/add.go @@ -31,11 +31,8 @@ import ( "sigs.k8s.io/controller-runtime/pkg/reconcile" "sigs.k8s.io/controller-runtime/pkg/source" - "github.com/pkg/errors" cephv1 "github.com/rook/rook/pkg/apis/ceph.rook.io/v1" - "github.com/rook/rook/pkg/operator/k8sutil" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" "k8s.io/apimachinery/pkg/types" ) @@ -83,11 +80,6 @@ func Add(mgr manager.Manager, context *controllerconfig.Context) error { return err } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(reconcileClusterDisruption.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - // Only reconcile for PDB update event when allowed disruptions for the main OSD PDB is 0. // This means that one of the OSD is down due to node drain or any other reason pdbPredicate := predicate.Funcs{ @@ -96,13 +88,6 @@ func Add(mgr manager.Manager, context *controllerconfig.Context) error { return false }, UpdateFunc: func(e event.UpdateEvent) bool { - if usePDBV1Beta1 { - pdb, ok := e.ObjectNew.DeepCopyObject().(*policyv1beta1.PodDisruptionBudget) - if !ok { - return false - } - return pdb.Name == osdPDBAppName && pdb.Status.DisruptionsAllowed == 0 - } pdb, ok := e.ObjectNew.DeepCopyObject().(*policyv1.PodDisruptionBudget) if !ok { return false @@ -116,46 +101,24 @@ func Add(mgr manager.Manager, context *controllerconfig.Context) error { } // Watch for main PodDisruptionBudget and enqueue the CephCluster in the namespace - if usePDBV1Beta1 { - err = c.Watch( - source.Kind(mgr.GetCache(), &policyv1beta1.PodDisruptionBudget{}), - handler.EnqueueRequestsFromMapFunc(handler.MapFunc(func(context ctx.Context, obj client.Object) []reconcile.Request { - pdb, ok := obj.(*policyv1beta1.PodDisruptionBudget) - if !ok { - // Not a pdb, returning empty - logger.Error("PDB handler received non-PDB") - return []reconcile.Request{} - } - namespace := pdb.GetNamespace() - req := reconcile.Request{NamespacedName: types.NamespacedName{Namespace: namespace}} - return []reconcile.Request{req} - }), - ), - pdbPredicate, - ) - if err != nil { - return err - } - } else { - err = c.Watch( - source.Kind(mgr.GetCache(), &policyv1.PodDisruptionBudget{}), - handler.EnqueueRequestsFromMapFunc(handler.MapFunc(func(context ctx.Context, obj client.Object) []reconcile.Request { - pdb, ok := obj.(*policyv1.PodDisruptionBudget) - if !ok { - // Not a pdb, returning empty - logger.Error("PDB handler received non-PDB") - return []reconcile.Request{} - } - namespace := pdb.GetNamespace() - req := reconcile.Request{NamespacedName: types.NamespacedName{Namespace: namespace}} - return []reconcile.Request{req} - }), - ), - pdbPredicate, - ) - if err != nil { - return err - } + err = c.Watch( + source.Kind(mgr.GetCache(), &policyv1.PodDisruptionBudget{}), + handler.EnqueueRequestsFromMapFunc(handler.MapFunc(func(context ctx.Context, obj client.Object) []reconcile.Request { + pdb, ok := obj.(*policyv1.PodDisruptionBudget) + if !ok { + // Not a pdb, returning empty + logger.Error("PDB handler received non-PDB") + return []reconcile.Request{} + } + namespace := pdb.GetNamespace() + req := reconcile.Request{NamespacedName: types.NamespacedName{Namespace: namespace}} + return []reconcile.Request{req} + }), + ), + pdbPredicate, + ) + if err != nil { + return err } // enqueues with an empty name that is populated by the reconciler. diff --git a/pkg/operator/ceph/disruption/clusterdisruption/osd.go b/pkg/operator/ceph/disruption/clusterdisruption/osd.go index 15bfbd1373a5..ad82fbc32bbd 100644 --- a/pkg/operator/ceph/disruption/clusterdisruption/osd.go +++ b/pkg/operator/ceph/disruption/clusterdisruption/osd.go @@ -35,7 +35,6 @@ import ( appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/apimachinery/pkg/util/sets" @@ -84,35 +83,6 @@ func (r *ReconcileClusterDisruption) createDefaultPDBforOSD(namespace string) er selector := &metav1.LabelSelector{ MatchLabels: map[string]string{k8sutil.AppAttr: osdPDBAppName}, } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - Spec: policyv1beta1.PodDisruptionBudgetSpec{ - MaxUnavailable: &intstr.IntOrString{IntVal: 1}, - Selector: selector, - }, - } - ownerInfo := k8sutil.NewOwnerInfo(cephCluster, r.scheme) - err := ownerInfo.SetControllerReference(pdb) - if err != nil { - return errors.Wrapf(err, "failed to set owner reference to pdb %v", pdb) - } - - err = r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1beta1.PodDisruptionBudget{}) - if err != nil { - if apierrors.IsNotFound(err) { - logger.Info("all PGs are active+clean. Restoring default OSD pdb settings") - logger.Infof("creating the default pdb %q with maxUnavailable=1 for all osd", osdPDBAppName) - return r.createPDB(pdb) - } - return errors.Wrapf(err, "failed to get pdb %q", pdb.Name) - } - return nil - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, Spec: policyv1.PodDisruptionBudgetSpec{ @@ -121,7 +91,7 @@ func (r *ReconcileClusterDisruption) createDefaultPDBforOSD(namespace string) er }, } ownerInfo := k8sutil.NewOwnerInfo(cephCluster, r.scheme) - err = ownerInfo.SetControllerReference(pdb) + err := ownerInfo.SetControllerReference(pdb) if err != nil { return errors.Wrapf(err, "failed to set owner reference to pdb %v", pdb) } @@ -144,28 +114,10 @@ func (r *ReconcileClusterDisruption) deleteDefaultPDBforOSD(namespace string) er Name: osdPDBAppName, Namespace: namespace, } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - } - err := r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1beta1.PodDisruptionBudget{}) - if err != nil { - if apierrors.IsNotFound(err) { - return nil - } - return errors.Wrapf(err, "failed to get pdb %q", pdb.Name) - } - logger.Infof("deleting the default pdb %q with maxUnavailable=1 for all osd", osdPDBAppName) - return r.deletePDB(pdb) - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, } - err = r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1.PodDisruptionBudget{}) + err := r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1.PodDisruptionBudget{}) if err != nil { if apierrors.IsNotFound(err) { return nil @@ -193,33 +145,6 @@ func (r *ReconcileClusterDisruption) createBlockingPDBForOSD(namespace, failureD selector := &metav1.LabelSelector{ MatchLabels: map[string]string{fmt.Sprintf(osd.TopologyLocationLabel, failureDomainType): failureDomainName}, } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - Spec: policyv1beta1.PodDisruptionBudgetSpec{ - MaxUnavailable: &intstr.IntOrString{IntVal: 0}, - Selector: selector, - }, - } - ownerInfo := k8sutil.NewOwnerInfo(cephCluster, r.scheme) - err := ownerInfo.SetControllerReference(pdb) - if err != nil { - return errors.Wrapf(err, "failed to set owner reference to pdb %v", pdb) - } - err = r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1beta1.PodDisruptionBudget{}) - if err != nil { - if apierrors.IsNotFound(err) { - logger.Infof("creating temporary blocking pdb %q with maxUnavailable=0 for %q failure domain %q", pdbName, failureDomainType, failureDomainName) - return r.createPDB(pdb) - } - return errors.Wrapf(err, "failed to get pdb %q", pdb.Name) - } - return nil - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, Spec: policyv1.PodDisruptionBudgetSpec{ @@ -228,7 +153,7 @@ func (r *ReconcileClusterDisruption) createBlockingPDBForOSD(namespace, failureD }, } ownerInfo := k8sutil.NewOwnerInfo(cephCluster, r.scheme) - err = ownerInfo.SetControllerReference(pdb) + err := ownerInfo.SetControllerReference(pdb) if err != nil { return errors.Wrapf(err, "failed to set owner reference to pdb %v", pdb) } @@ -250,28 +175,10 @@ func (r *ReconcileClusterDisruption) deleteBlockingPDBForOSD(namespace, failureD Name: pdbName, Namespace: namespace, } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - } - err := r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1beta1.PodDisruptionBudget{}) - if err != nil { - if apierrors.IsNotFound(err) { - return nil - } - return errors.Wrapf(err, "failed to get pdb %q", pdb.Name) - } - logger.Infof("deleting temporary blocking pdb with %q with maxUnavailable=0 for %q failure domain %q", pdbName, failureDomainType, failureDomainName) - return r.deletePDB(pdb) - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, } - err = r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1.PodDisruptionBudget{}) + err := r.client.Get(r.context.OpManagerContext, pdbRequest, &policyv1.PodDisruptionBudget{}) if err != nil { if apierrors.IsNotFound(err) { return nil @@ -632,22 +539,8 @@ func getPDBName(failureDomainType, failureDomainName string) string { } func (r *ReconcileClusterDisruption) getAllowedDisruptions(pdbName, namespace string) (int32, error) { - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return -1, errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{} - err = r.client.Get(r.context.OpManagerContext, types.NamespacedName{Name: pdbName, Namespace: namespace}, pdb) - if err != nil { - return -1, err - } - - return pdb.Status.DisruptionsAllowed, nil - } - pdb := &policyv1.PodDisruptionBudget{} - err = r.client.Get(r.context.OpManagerContext, types.NamespacedName{Name: pdbName, Namespace: namespace}, pdb) + err := r.client.Get(r.context.OpManagerContext, types.NamespacedName{Name: pdbName, Namespace: namespace}, pdb) if err != nil { return -1, err } diff --git a/pkg/operator/ceph/disruption/clusterdisruption/osd_test.go b/pkg/operator/ceph/disruption/clusterdisruption/osd_test.go index 627c1e7fe0e6..aefc87897b89 100644 --- a/pkg/operator/ceph/disruption/clusterdisruption/osd_test.go +++ b/pkg/operator/ceph/disruption/clusterdisruption/osd_test.go @@ -34,7 +34,6 @@ import ( appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" @@ -123,8 +122,6 @@ func getFakeReconciler(t *testing.T, obj ...runtime.Object) *ReconcileClusterDis scheme := scheme.Scheme err := policyv1.AddToScheme(scheme) assert.NoError(t, err) - err = policyv1beta1.AddToScheme(scheme) - assert.NoError(t, err) err = appsv1.AddToScheme(scheme) assert.NoError(t, err) @@ -395,19 +392,6 @@ func TestReconcilePDBForOSD(t *testing.T) { for _, pdb := range existingPDBsV1.Items { assert.Equal(t, tc.expectedMaxUnavailableCount, pdb.Spec.MaxUnavailable.IntValue()) } - // check for PDBV1Beta1 version - test.SetFakeKubernetesVersion(clientset, "v1.20.0") - r.context = &controllerconfig.Context{ClusterdContext: &clusterd.Context{Executor: executor, Clientset: clientset}} - _, err = r.reconcilePDBsForOSDs(clusterInfo, request, tc.configMap, "zone", tc.allFailureDomains, tc.osdDownFailureDomains, tc.activeNodeDrains, tc.pgHealthyRegex) - assert.NoError(t, err) - existingPDBsV1Beta1 := &policyv1beta1.PodDisruptionBudgetList{} - err = r.client.List(context.TODO(), existingPDBsV1Beta1) - assert.NoError(t, err) - assert.Equal(t, tc.expectedOSDPDBCount, len(existingPDBsV1Beta1.Items)) - for _, pdb := range existingPDBsV1Beta1.Items { - assert.Equal(t, tc.expectedMaxUnavailableCount, pdb.Spec.MaxUnavailable.IntValue()) - } - // assert that config map is updated with correct failure domain existingConfigMaps := &corev1.ConfigMapList{} err = r.client.List(context.TODO(), existingConfigMaps) diff --git a/pkg/operator/ceph/disruption/clusterdisruption/pools.go b/pkg/operator/ceph/disruption/clusterdisruption/pools.go index 2b55d42f52dd..ee0240a94f62 100644 --- a/pkg/operator/ceph/disruption/clusterdisruption/pools.go +++ b/pkg/operator/ceph/disruption/clusterdisruption/pools.go @@ -21,11 +21,9 @@ import ( cephv1 "github.com/rook/rook/pkg/apis/ceph.rook.io/v1" "github.com/rook/rook/pkg/operator/ceph/cluster/osd/topology" - "github.com/rook/rook/pkg/operator/k8sutil" "github.com/pkg/errors" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/intstr" @@ -136,25 +134,6 @@ func (r *ReconcileClusterDisruption) reconcileCephObjectStore(cephObjectStoreLis }, }, } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - Spec: policyv1beta1.PodDisruptionBudgetSpec{ - Selector: labelSelector, - MinAvailable: minAvailable, - }, - } - request := types.NamespacedName{Name: pdbName, Namespace: namespace} - err = r.reconcileStaticPDB(request, pdb) - if err != nil { - return errors.Wrapf(err, "failed to reconcile cephobjectstore pdb %v", request) - } - continue - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, Spec: policyv1.PodDisruptionBudgetSpec{ @@ -163,7 +142,7 @@ func (r *ReconcileClusterDisruption) reconcileCephObjectStore(cephObjectStoreLis }, } request := types.NamespacedName{Name: pdbName, Namespace: namespace} - err = r.reconcileStaticPDB(request, pdb) + err := r.reconcileStaticPDB(request, pdb) if err != nil { return errors.Wrapf(err, "failed to reconcile cephobjectstore pdb %v", request) } @@ -204,25 +183,6 @@ func (r *ReconcileClusterDisruption) reconcileCephFilesystem(cephFilesystemList }, }, } - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - pdb := &policyv1beta1.PodDisruptionBudget{ - ObjectMeta: objectMeta, - Spec: policyv1beta1.PodDisruptionBudgetSpec{ - Selector: labelSelector, - MinAvailable: minAvailable, - }, - } - request := types.NamespacedName{Name: pdbName, Namespace: namespace} - err := r.reconcileStaticPDB(request, pdb) - if err != nil { - return errors.Wrapf(err, "failed to reconcile cephfs pdb %v", request) - } - continue - } pdb := &policyv1.PodDisruptionBudget{ ObjectMeta: objectMeta, Spec: policyv1.PodDisruptionBudgetSpec{ @@ -231,7 +191,7 @@ func (r *ReconcileClusterDisruption) reconcileCephFilesystem(cephFilesystemList }, } request := types.NamespacedName{Name: pdbName, Namespace: namespace} - err = r.reconcileStaticPDB(request, pdb) + err := r.reconcileStaticPDB(request, pdb) if err != nil { return errors.Wrapf(err, "failed to reconcile cephfs pdb %v", request) } diff --git a/pkg/operator/ceph/disruption/clusterdisruption/static_pdb.go b/pkg/operator/ceph/disruption/clusterdisruption/static_pdb.go index 4134ff599806..b90abdba1409 100644 --- a/pkg/operator/ceph/disruption/clusterdisruption/static_pdb.go +++ b/pkg/operator/ceph/disruption/clusterdisruption/static_pdb.go @@ -20,9 +20,7 @@ import ( "github.com/pkg/errors" "sigs.k8s.io/controller-runtime/pkg/client" - "github.com/rook/rook/pkg/operator/k8sutil" policyv1 "k8s.io/api/policy/v1" - policyv1beta1 "k8s.io/api/policy/v1beta1" apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/types" ) @@ -36,17 +34,8 @@ func (r *ReconcileClusterDisruption) createStaticPDB(pdb client.Object) error { } func (r *ReconcileClusterDisruption) reconcileStaticPDB(request types.NamespacedName, pdb client.Object) error { - var existingPDB client.Object - usePDBV1Beta1, err := k8sutil.UsePDBV1Beta1Version(r.context.ClusterdContext.Clientset) - if err != nil { - return errors.Wrap(err, "failed to fetch pdb version") - } - if usePDBV1Beta1 { - existingPDB = &policyv1beta1.PodDisruptionBudget{} - } else { - existingPDB = &policyv1.PodDisruptionBudget{} - } - err = r.client.Get(r.context.OpManagerContext, request, existingPDB) + existingPDB := &policyv1.PodDisruptionBudget{} + err := r.client.Get(r.context.OpManagerContext, request, existingPDB) if err != nil { if apierrors.IsNotFound(err) { return r.createStaticPDB(pdb) diff --git a/pkg/operator/k8sutil/k8sutil.go b/pkg/operator/k8sutil/k8sutil.go index e816f97b980e..bc0ac15b2f7a 100644 --- a/pkg/operator/k8sutil/k8sutil.go +++ b/pkg/operator/k8sutil/k8sutil.go @@ -26,7 +26,6 @@ import ( "time" "github.com/coreos/pkg/capnslog" - "github.com/pkg/errors" rookversion "github.com/rook/rook/pkg/version" kerrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -194,17 +193,6 @@ func validateLabelValue(value string) string { return sanitized } -func UsePDBV1Beta1Version(Clientset kubernetes.Interface) (bool, error) { - k8sVersion, err := GetK8SVersion(Clientset) - if err != nil { - return false, errors.Wrap(err, "failed to fetch k8s version") - } - logger.Debugf("kubernetes version fetched %v", k8sVersion) - // minimum k8s version required for v1 PodDisruptionBudget is 'v1.21.0'. Apply v1 if k8s version is at least 'v1.21.0', else apply v1beta1 PodDisruptionBudget. - minVersionForPDBV1 := "1.21.0" - return k8sVersion.LessThan(version.MustParseSemantic(minVersionForPDBV1)), nil -} - // ToValidDNSLabel converts a given string to a valid DNS-1035 spec label. The DNS-1035 spec // follows the regex '[a-z]([-a-z0-9]*[a-z0-9])?' and is at most 63 chars long. DNS-1035 is used // over DNS-1123 because it is more strict. Kubernetes docs are not always clear when a DNS_LABEL is From a72e02945978a2a115207d6ea40e14223d8af4a6 Mon Sep 17 00:00:00 2001 From: parth-gr Date: Thu, 21 Mar 2024 20:39:35 +0530 Subject: [PATCH 3/5] csi: add a new flag to disable csi driver added a new flag ROOK_CSI_DISABLE_DRIVER to disable csi controller. Signed-off-by: parth-gr --- Documentation/Helm-Charts/operator-chart.md | 1 + .../charts/rook-ceph/templates/configmap.yaml | 1 + deploy/charts/rook-ceph/values.yaml | 3 ++ deploy/examples/operator-openshift.yaml | 2 + deploy/examples/operator.yaml | 2 + pkg/operator/ceph/csi/controller.go | 46 +++++++++++-------- 6 files changed, 37 insertions(+), 18 deletions(-) diff --git a/Documentation/Helm-Charts/operator-chart.md b/Documentation/Helm-Charts/operator-chart.md index 1b7eb2ad5a78..8e190a2cb151 100644 --- a/Documentation/Helm-Charts/operator-chart.md +++ b/Documentation/Helm-Charts/operator-chart.md @@ -80,6 +80,7 @@ The following table lists the configurable parameters of the rook-operator chart | `csi.csiRBDPluginVolume` | The volume of the CephCSI RBD plugin DaemonSet | `nil` | | `csi.csiRBDPluginVolumeMount` | The volume mounts of the CephCSI RBD plugin DaemonSet | `nil` | | `csi.csiRBDProvisionerResource` | CEPH CSI RBD provisioner resource requirement list csi-omap-generator resources will be applied only if `enableOMAPGenerator` is set to `true` | see values.yaml | +| `csi.disableCsiDriver` | Disable the CSI driver. | `"false"` | | `csi.disableHolderPods` | Deprecation note: Rook uses "holder" pods to allow CSI to connect to the multus public network without needing hosts to the network. Holder pods are being deprecated. See issue for details: https://github.com/rook/rook/issues/13055. New Rook deployments should set this to "true". | `true` | | `csi.enableCSIEncryption` | Enable Ceph CSI PVC encryption support | `false` | | `csi.enableCSIHostNetwork` | Enable host networking for CSI CephFS and RBD nodeplugins. This may be necessary in some network configurations where the SDN does not provide access to an external cluster or there is significant drop in read/write performance | `true` | diff --git a/deploy/charts/rook-ceph/templates/configmap.yaml b/deploy/charts/rook-ceph/templates/configmap.yaml index e38ddc9f22a9..c6f385451421 100644 --- a/deploy/charts/rook-ceph/templates/configmap.yaml +++ b/deploy/charts/rook-ceph/templates/configmap.yaml @@ -20,6 +20,7 @@ data: {{- if .Values.csi }} ROOK_CSI_ENABLE_RBD: {{ .Values.csi.enableRbdDriver | quote }} ROOK_CSI_ENABLE_CEPHFS: {{ .Values.csi.enableCephfsDriver | quote }} + ROOK_CSI_DISABLE_DRIVER: {{ .Values.csi.disableCsiDriver | quote }} CSI_ENABLE_CEPHFS_SNAPSHOTTER: {{ .Values.csi.enableCephfsSnapshotter | quote }} CSI_ENABLE_NFS_SNAPSHOTTER: {{ .Values.csi.enableNFSSnapshotter | quote }} CSI_ENABLE_RBD_SNAPSHOTTER: {{ .Values.csi.enableRBDSnapshotter | quote }} diff --git a/deploy/charts/rook-ceph/values.yaml b/deploy/charts/rook-ceph/values.yaml index 0493361a803e..abbfba44a949 100644 --- a/deploy/charts/rook-ceph/values.yaml +++ b/deploy/charts/rook-ceph/values.yaml @@ -81,6 +81,9 @@ csi: enableRbdDriver: true # -- Enable Ceph CSI CephFS driver enableCephfsDriver: true + # -- Disable the CSI driver. + disableCsiDriver: "false" + # -- Enable host networking for CSI CephFS and RBD nodeplugins. This may be necessary # in some network configurations where the SDN does not provide access to an external cluster or # there is significant drop in read/write performance diff --git a/deploy/examples/operator-openshift.yaml b/deploy/examples/operator-openshift.yaml index 9243ae9f47c2..6030fb5a4495 100644 --- a/deploy/examples/operator-openshift.yaml +++ b/deploy/examples/operator-openshift.yaml @@ -121,6 +121,8 @@ data: ROOK_CSI_ENABLE_RBD: "true" # Enable the CSI NFS driver. To start another version of the CSI driver, see image properties below. ROOK_CSI_ENABLE_NFS: "false" + # Disable the CSI driver. + ROOK_CSI_DISABLE_DRIVER: "false" # Set to true to enable Ceph CSI pvc encryption support. CSI_ENABLE_ENCRYPTION: "false" diff --git a/deploy/examples/operator.yaml b/deploy/examples/operator.yaml index bdc0b53103e9..9a0d35cf8c68 100644 --- a/deploy/examples/operator.yaml +++ b/deploy/examples/operator.yaml @@ -35,6 +35,8 @@ data: ROOK_CSI_ENABLE_RBD: "true" # Enable the CSI NFS driver. To start another version of the CSI driver, see image properties below. ROOK_CSI_ENABLE_NFS: "false" + # Disable the CSI driver. + ROOK_CSI_DISABLE_DRIVER: "false" # Set to true to enable Ceph CSI pvc encryption support. CSI_ENABLE_ENCRYPTION: "false" diff --git a/pkg/operator/ceph/csi/controller.go b/pkg/operator/ceph/csi/controller.go index 1c56183c2981..8a31f36f7905 100644 --- a/pkg/operator/ceph/csi/controller.go +++ b/pkg/operator/ceph/csi/controller.go @@ -137,6 +137,34 @@ func (r *ReconcileCSI) reconcile(request reconcile.Request) (reconcile.Result, e // reconcileResult is used to communicate the result of the reconciliation back to the caller var reconcileResult reconcile.Result + // Fetch the operator's configmap. We force the NamespaceName to the operator since the request + // could be a CephCluster. If so the NamespaceName will be the one from the cluster and thus the + // CM won't be found + opNamespaceName := types.NamespacedName{Name: opcontroller.OperatorSettingConfigMapName, Namespace: r.opConfig.OperatorNamespace} + opConfig := &v1.ConfigMap{} + err := r.client.Get(r.opManagerContext, opNamespaceName, opConfig) + if err != nil { + if kerrors.IsNotFound(err) { + logger.Debug("operator's configmap resource not found. will use default value or env var.") + r.opConfig.Parameters = make(map[string]string) + } else { + // Error reading the object - requeue the request. + return opcontroller.ImmediateRetryResult, errors.Wrap(err, "failed to get operator's configmap") + } + } else { + // Populate the operator's config + r.opConfig.Parameters = opConfig.Data + } + + // do not recocnile if csi driver is disabled + disableCSI, err := strconv.ParseBool(k8sutil.GetValue(r.opConfig.Parameters, "ROOK_CSI_DISABLE_DRIVER", "false")) + if err != nil { + return reconcile.Result{}, errors.Wrap(err, "unable to parse value for 'ROOK_CSI_DISABLE_DRIVER") + } else if disableCSI { + logger.Info("ceph csi driver is disabled") + return reconcile.Result{}, nil + } + serverVersion, err := r.context.Clientset.Discovery().ServerVersion() if err != nil { return opcontroller.ImmediateRetryResult, errors.Wrap(err, "failed to get server version") @@ -171,24 +199,6 @@ func (r *ReconcileCSI) reconcile(request reconcile.Request) (reconcile.Result, e return reconcile.Result{}, nil } - // Fetch the operator's configmap. We force the NamespaceName to the operator since the request - // could be a CephCluster. If so the NamespaceName will be the one from the cluster and thus the - // CM won't be found - opNamespaceName := types.NamespacedName{Name: opcontroller.OperatorSettingConfigMapName, Namespace: r.opConfig.OperatorNamespace} - opConfig := &v1.ConfigMap{} - err = r.client.Get(r.opManagerContext, opNamespaceName, opConfig) - if err != nil { - if kerrors.IsNotFound(err) { - logger.Debug("operator's configmap resource not found. will use default value or env var.") - r.opConfig.Parameters = make(map[string]string) - } else { - // Error reading the object - requeue the request. - return opcontroller.ImmediateRetryResult, errors.Wrap(err, "failed to get operator's configmap") - } - } else { - // Populate the operator's config - r.opConfig.Parameters = opConfig.Data - } csiHostNetworkEnabled, err := strconv.ParseBool(k8sutil.GetValue(r.opConfig.Parameters, "CSI_ENABLE_HOST_NETWORK", "true")) if err != nil { From d2546d7722aa1ce42f134bce95a297c48293b7e3 Mon Sep 17 00:00:00 2001 From: subhamkrai Date: Tue, 26 Mar 2024 11:04:43 +0530 Subject: [PATCH 4/5] build: update go k8s and related dependencies updating go k8s 0.29.3, vault to v1.12.2 and aws-sdk-go to v1.51.6 Signed-off-by: subhamkrai --- go.mod | 22 +++++++++++----------- go.sum | 46 ++++++++++++++++++++++++---------------------- pkg/apis/go.mod | 14 ++++++-------- pkg/apis/go.sum | 28 ++++++++++++++-------------- 4 files changed, 55 insertions(+), 55 deletions(-) diff --git a/go.mod b/go.mod index cc458f3b1d6b..644bdb9e8139 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ replace ( require ( github.com/IBM/keyprotect-go-client v0.12.2 - github.com/aws/aws-sdk-go v1.50.35 + github.com/aws/aws-sdk-go v1.51.6 github.com/banzaicloud/k8s-objectmatcher v1.8.0 github.com/ceph/go-ceph v0.26.0 github.com/coreos/pkg v0.0.0-20230601102743-20bbbf26f4d8 @@ -23,7 +23,7 @@ require ( github.com/go-ini/ini v1.67.0 github.com/google/go-cmp v0.6.0 github.com/google/uuid v1.6.0 - github.com/hashicorp/vault/api v1.12.0 + github.com/hashicorp/vault/api v1.12.2 github.com/k8snetworkplumbingwg/network-attachment-definition-client v1.6.0 github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20221122204822-d1a8c34382f1 github.com/libopenstorage/secrets v0.0.0-20231011182615-5f4b25ceede1 @@ -41,12 +41,12 @@ require ( golang.org/x/sync v0.6.0 gopkg.in/ini.v1 v1.67.0 gopkg.in/yaml.v2 v2.4.0 - k8s.io/api v0.29.2 - k8s.io/apiextensions-apiserver v0.29.2 - k8s.io/apimachinery v0.29.2 - k8s.io/cli-runtime v0.29.2 - k8s.io/client-go v0.29.2 - k8s.io/cloud-provider v0.29.2 + k8s.io/api v0.29.3 + k8s.io/apiextensions-apiserver v0.29.3 + k8s.io/apimachinery v0.29.3 + k8s.io/cli-runtime v0.29.3 + k8s.io/client-go v0.29.3 + k8s.io/cloud-provider v0.29.3 k8s.io/utils v0.0.0-20240102154912-e7106e64919e sigs.k8s.io/controller-runtime v0.17.2 sigs.k8s.io/mcs-api v0.1.0 @@ -92,7 +92,7 @@ require ( github.com/go-openapi/swag v0.22.10 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/golang/protobuf v1.5.3 // indirect + github.com/golang/protobuf v1.5.4 // indirect github.com/google/btree v1.1.2 // indirect github.com/google/gnostic-models v0.6.8 // indirect github.com/google/gofuzz v1.2.0 // indirect @@ -152,11 +152,11 @@ require ( golang.org/x/time v0.5.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/appengine v1.6.8 // indirect - google.golang.org/protobuf v1.32.0 // indirect + google.golang.org/protobuf v1.33.0 // indirect gopkg.in/evanphx/json-patch.v5 v5.7.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/component-base v0.29.2 // indirect + k8s.io/component-base v0.29.3 // indirect k8s.io/klog/v2 v2.120.1 // indirect k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect diff --git a/go.sum b/go.sum index 3a4c709bf274..46e7f8ce18d4 100644 --- a/go.sum +++ b/go.sum @@ -138,8 +138,8 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkY github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/aws/aws-sdk-go v1.44.164/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= -github.com/aws/aws-sdk-go v1.50.35 h1:llQnNddBI/64pK7pwUFBoWYmg8+XGQUCs214eMbSDZc= -github.com/aws/aws-sdk-go v1.50.35/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= +github.com/aws/aws-sdk-go v1.51.6 h1:Ld36dn9r7P9IjU8WZSaswQ8Y/XUCRpewim5980DwYiU= +github.com/aws/aws-sdk-go v1.51.6/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/banzaicloud/k8s-objectmatcher v1.8.0 h1:Nugn25elKtPMTA2br+JgHNeSQ04sc05MDPmpJnd1N2A= github.com/banzaicloud/k8s-objectmatcher v1.8.0/go.mod h1:p2LSNAjlECf07fbhDyebTkPUIYnU05G+WfGgkTmgeMg= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= @@ -249,8 +249,9 @@ github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLi github.com/evanphx/json-patch/v5 v5.0.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= github.com/evanphx/json-patch/v5 v5.8.0 h1:lRj6N9Nci7MvzrXuX6HFzU8XjmhPiXPlsKEy1u0KQro= github.com/evanphx/json-patch/v5 v5.8.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= -github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= +github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= @@ -397,8 +398,8 @@ github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= @@ -538,8 +539,9 @@ github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0m github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= github.com/hashicorp/vault/api v1.10.0/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8= -github.com/hashicorp/vault/api v1.12.0 h1:meCpJSesvzQyao8FCOgk2fGdoADAnbDu2WPJN1lDLJ4= github.com/hashicorp/vault/api v1.12.0/go.mod h1:si+lJCYO7oGkIoNPAN8j3azBLTn9SjMGS+jFaHd1Cck= +github.com/hashicorp/vault/api v1.12.2 h1:7YkCTE5Ni90TcmYHDBExdt4WGJxhpzaHqR6uGbQb/rE= +github.com/hashicorp/vault/api v1.12.2/go.mod h1:LSGf1NGT1BnvFFnKVtnvcaLBM2Lz+gJdpL6HUYed8KE= github.com/hashicorp/vault/api/auth/approle v0.5.0/go.mod h1:CHOQIA1AZACfjTzHggmyfiOZ+xCSKNRFqe48FTCzH0k= github.com/hashicorp/vault/api/auth/approle v0.6.0 h1:ELfFFQlTM/e97WJKu1HvNFa7lQ3tlTwwzrR1NJE1V7Y= github.com/hashicorp/vault/api/auth/approle v0.6.0/go.mod h1:CCoIl1xBC3lAWpd1HV+0ovk76Z8b8Mdepyk21h3pGk0= @@ -1513,8 +1515,8 @@ google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQ google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.32.0 h1:pPC6BG5ex8PDFnkbrGU3EixyhKcQ2aDuBS36lqK/C7I= -google.golang.org/protobuf v1.32.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= +google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -1579,15 +1581,15 @@ k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= k8s.io/api v0.23.5/go.mod h1:Na4XuKng8PXJ2JsploYYrivXrINeTaycCGcYgF91Xm8= k8s.io/api v0.26.0/go.mod h1:k6HDTaIFC8yn1i6pSClSqIwLABIcLV9l5Q4EcngKnQg= -k8s.io/api v0.29.2 h1:hBC7B9+MU+ptchxEqTNW2DkUosJpp1P+Wn6YncZ474A= -k8s.io/api v0.29.2/go.mod h1:sdIaaKuU7P44aoyyLlikSLayT6Vb7bvJNCX105xZXY0= +k8s.io/api v0.29.3 h1:2ORfZ7+bGC3YJqGpV0KSDDEVf8hdGQ6A03/50vj8pmw= +k8s.io/api v0.29.3/go.mod h1:y2yg2NTyHUUkIoTC+phinTnEa3KFM6RZ3szxt014a80= k8s.io/apiextensions-apiserver v0.0.0-20190409022649-727a075fdec8/go.mod h1:IxkesAMoaCRoLrPJdZNZUQp9NfZnzqaVzLhb2VEQzXE= k8s.io/apiextensions-apiserver v0.18.2/go.mod h1:q3faSnRGmYimiocj6cHQ1I3WpLqmDgJFlKL37fC4ZvY= k8s.io/apiextensions-apiserver v0.18.3/go.mod h1:TMsNGs7DYpMXd+8MOCX8KzPOCx8fnZMoIGB24m03+JE= k8s.io/apiextensions-apiserver v0.18.4/go.mod h1:NYeyeYq4SIpFlPxSAB6jHPIdvu3hL0pc36wuRChybio= k8s.io/apiextensions-apiserver v0.20.1/go.mod h1:ntnrZV+6a3dB504qwC5PN/Yg9PBiDNt1EVqbW2kORVk= -k8s.io/apiextensions-apiserver v0.29.2 h1:UK3xB5lOWSnhaCk0RFZ0LUacPZz9RY4wi/yt2Iu+btg= -k8s.io/apiextensions-apiserver v0.29.2/go.mod h1:aLfYjpA5p3OwtqNXQFkhJ56TB+spV8Gc4wfMhUA3/b8= +k8s.io/apiextensions-apiserver v0.29.3 h1:9HF+EtZaVpFjStakF4yVufnXGPRppWFEQ87qnO91YeI= +k8s.io/apiextensions-apiserver v0.29.3/go.mod h1:po0XiY5scnpJfFizNGo6puNU6Fq6D70UJY2Cb2KwAVc= k8s.io/apimachinery v0.0.0-20190404173353-6a84e37a896d/go.mod h1:ccL7Eh7zubPUSh9A3USN90/OzHNSVN6zxzde07TDCL0= k8s.io/apimachinery v0.18.2/go.mod h1:9SnR/e11v5IbyPCGbvJViimtJ0SwHG4nfZFjU77ftcA= k8s.io/apimachinery v0.18.3/go.mod h1:OaXp26zu/5J7p0f92ASynJa1pZo06YlV9fG7BoWbCko= @@ -1599,14 +1601,14 @@ k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRp k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= k8s.io/apimachinery v0.23.5/go.mod h1:BEuFMMBaIbcOqVIJqNZJXGFTP4W6AycEpb5+m/97hrM= k8s.io/apimachinery v0.26.0/go.mod h1:tnPmbONNJ7ByJNz9+n9kMjNP8ON+1qoAIIC70lztu74= -k8s.io/apimachinery v0.29.2 h1:EWGpfJ856oj11C52NRCHuU7rFDwxev48z+6DSlGNsV8= -k8s.io/apimachinery v0.29.2/go.mod h1:6HVkd1FwxIagpYrHSwJlQqZI3G9LfYWRPAkUvLnXTKU= +k8s.io/apimachinery v0.29.3 h1:2tbx+5L7RNvqJjn7RIuIKu9XTsIZ9Z5wX2G22XAa5EU= +k8s.io/apimachinery v0.29.3/go.mod h1:hx/S4V2PNW4OMg3WizRrHutyB5la0iCUbZym+W0EQIU= k8s.io/apiserver v0.18.2/go.mod h1:Xbh066NqrZO8cbsoenCwyDJ1OSi8Ag8I2lezeHxzwzw= k8s.io/apiserver v0.18.3/go.mod h1:tHQRmthRPLUtwqsOnJJMoI8SW3lnoReZeE861lH8vUw= k8s.io/apiserver v0.18.4/go.mod h1:q+zoFct5ABNnYkGIaGQ3bcbUNdmPyOCoEBcg51LChY8= k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= -k8s.io/cli-runtime v0.29.2 h1:smfsOcT4QujeghsNjECKN3lwyX9AwcFU0nvJ7sFN3ro= -k8s.io/cli-runtime v0.29.2/go.mod h1:KLisYYfoqeNfO+MkTWvpqIyb1wpJmmFJhioA0xd4MW8= +k8s.io/cli-runtime v0.29.3 h1:r68rephmmytoywkw2MyJ+CxjpasJDQY7AGc3XY2iv1k= +k8s.io/cli-runtime v0.29.3/go.mod h1:aqVUsk86/RhaGJwDhHXH0jcdqBrgdF3bZWk4Z9D4mkM= k8s.io/client-go v0.18.2/go.mod h1:Xcm5wVGXX9HAA2JJ2sSBUn3tCJ+4SVlCbl2MNNv+CIU= k8s.io/client-go v0.18.3/go.mod h1:4a/dpQEvzAhT1BbuWW09qvIaGw6Gbu1gZYiQZIi1DMw= k8s.io/client-go v0.18.4/go.mod h1:f5sXwL4yAZRkAtzOxRWUhA/N8XzGCb+nPZI8PfobZ9g= @@ -1615,10 +1617,10 @@ k8s.io/client-go v0.19.2/go.mod h1:S5wPhCqyDNAlzM9CnEdgTGV4OqhsW3jGO1UM1epwfJA= k8s.io/client-go v0.20.0/go.mod h1:4KWh/g+Ocd8KkCwKF8vUNnmqgv+EVnQDK4MBF4oB5tY= k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= k8s.io/client-go v0.23.5/go.mod h1:flkeinTO1CirYgzMPRWxUCnV0G4Fbu2vLhYCObnt/r4= -k8s.io/client-go v0.29.2 h1:FEg85el1TeZp+/vYJM7hkDlSTFZ+c5nnK44DJ4FyoRg= -k8s.io/client-go v0.29.2/go.mod h1:knlvFZE58VpqbQpJNbCbctTVXcd35mMyAAwBdpt4jrA= -k8s.io/cloud-provider v0.29.2 h1:ghKNXoQmeP8Fj/YTJNR6xQOzNrKXt6YZyy6mOEEa3yg= -k8s.io/cloud-provider v0.29.2/go.mod h1:KAp+07AUGmxcLnoLY5FndU4hj6158KMbiviNgctNRUk= +k8s.io/client-go v0.29.3 h1:R/zaZbEAxqComZ9FHeQwOh3Y1ZUs7FaHKZdQtIc2WZg= +k8s.io/client-go v0.29.3/go.mod h1:tkDisCvgPfiRpxGnOORfkljmS+UrW+WtXAy2fTvXJB0= +k8s.io/cloud-provider v0.29.3 h1:y39hNq0lrPD1qmqQ2ykwMJGeWF9LsepVkR2a4wskwLc= +k8s.io/cloud-provider v0.29.3/go.mod h1:daDV1WkAO6pTrdsn7v8TpN/q9n75ExUC4RJDl7vlPKk= k8s.io/code-generator v0.18.2/go.mod h1:+UHX5rSbxmR8kzS+FAv7um6dtYrZokQvjHpDSYRVkTc= k8s.io/code-generator v0.18.3/go.mod h1:TgNEVx9hCyPGpdtCWA34olQYLkh3ok9ar7XfSsr8b6c= k8s.io/code-generator v0.18.4/go.mod h1:TgNEVx9hCyPGpdtCWA34olQYLkh3ok9ar7XfSsr8b6c= @@ -1629,8 +1631,8 @@ k8s.io/component-base v0.18.2/go.mod h1:kqLlMuhJNHQ9lz8Z7V5bxUUtjFZnrypArGl58gmD k8s.io/component-base v0.18.3/go.mod h1:bp5GzGR0aGkYEfTj+eTY0AN/vXTgkJdQXjNTTVUaa3k= k8s.io/component-base v0.18.4/go.mod h1:7jr/Ef5PGmKwQhyAz/pjByxJbC58mhKAhiaDu0vXfPk= k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk= -k8s.io/component-base v0.29.2 h1:lpiLyuvPA9yV1aQwGLENYyK7n/8t6l3nn3zAtFTJYe8= -k8s.io/component-base v0.29.2/go.mod h1:BfB3SLrefbZXiBfbM+2H1dlat21Uewg/5qtKOl8degM= +k8s.io/component-base v0.29.3 h1:Oq9/nddUxlnrCuuR2K/jp6aflVvc0uDvxMzAWxnGzAo= +k8s.io/component-base v0.29.3/go.mod h1:Yuj33XXjuOk2BAaHsIGHhCKZQAgYKhqIxIjIr2UXYio= k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200114144118-36b2048a9120/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= diff --git a/pkg/apis/go.mod b/pkg/apis/go.mod index 7aa685a94700..eb13202c3a36 100644 --- a/pkg/apis/go.mod +++ b/pkg/apis/go.mod @@ -13,14 +13,14 @@ replace ( ) require ( - github.com/hashicorp/vault/api v1.12.0 + github.com/hashicorp/vault/api v1.12.2 github.com/k8snetworkplumbingwg/network-attachment-definition-client v1.6.0 github.com/kube-object-storage/lib-bucket-provisioner v0.0.0-20221122204822-d1a8c34382f1 github.com/libopenstorage/secrets v0.0.0-20231011182615-5f4b25ceede1 github.com/pkg/errors v0.9.1 github.com/stretchr/testify v1.9.0 - k8s.io/api v0.29.2 - k8s.io/apimachinery v0.29.2 + k8s.io/api v0.29.3 + k8s.io/apimachinery v0.29.3 ) require ( @@ -28,7 +28,7 @@ require ( github.com/onsi/ginkgo/v2 v2.14.0 // indirect github.com/onsi/gomega v1.30.0 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect - k8s.io/client-go v0.29.2 // indirect + k8s.io/client-go v0.29.3 // indirect k8s.io/utils v0.0.0-20240102154912-e7106e64919e // indirect sigs.k8s.io/yaml v1.4.0 // indirect ) @@ -46,7 +46,7 @@ require ( github.com/go-openapi/jsonreference v0.20.5 // indirect github.com/go-openapi/swag v0.22.10 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/protobuf v1.5.3 // indirect + github.com/golang/protobuf v1.5.4 // indirect github.com/google/gnostic-models v0.6.8 // indirect github.com/google/gofuzz v1.2.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect @@ -63,8 +63,6 @@ require ( github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/mailru/easyjson v0.7.7 // indirect - github.com/mattn/go-colorable v0.1.13 // indirect - github.com/mattn/go-isatty v0.0.20 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect @@ -82,7 +80,7 @@ require ( golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.5.0 // indirect google.golang.org/appengine v1.6.8 // indirect - google.golang.org/protobuf v1.32.0 // indirect + google.golang.org/protobuf v1.33.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect k8s.io/klog/v2 v2.120.1 // indirect diff --git a/pkg/apis/go.sum b/pkg/apis/go.sum index f9a9b7356a10..195edd96b129 100644 --- a/pkg/apis/go.sum +++ b/pkg/apis/go.sum @@ -200,8 +200,9 @@ github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLi github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/fatih/color v1.7.0 h1:DkWD4oS2D8LGGgTQ6IvwJJXSL5Vp2ffcQg58nFV38Ys= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= +github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= @@ -333,8 +334,8 @@ github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= @@ -463,8 +464,9 @@ github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0m github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= github.com/hashicorp/vault/api v1.10.0/go.mod h1:jo5Y/ET+hNyz+JnKDt8XLAdKs+AM0G5W0Vp1IrFI8N8= -github.com/hashicorp/vault/api v1.12.0 h1:meCpJSesvzQyao8FCOgk2fGdoADAnbDu2WPJN1lDLJ4= github.com/hashicorp/vault/api v1.12.0/go.mod h1:si+lJCYO7oGkIoNPAN8j3azBLTn9SjMGS+jFaHd1Cck= +github.com/hashicorp/vault/api v1.12.2 h1:7YkCTE5Ni90TcmYHDBExdt4WGJxhpzaHqR6uGbQb/rE= +github.com/hashicorp/vault/api v1.12.2/go.mod h1:LSGf1NGT1BnvFFnKVtnvcaLBM2Lz+gJdpL6HUYed8KE= github.com/hashicorp/vault/api/auth/approle v0.5.0/go.mod h1:CHOQIA1AZACfjTzHggmyfiOZ+xCSKNRFqe48FTCzH0k= github.com/hashicorp/vault/api/auth/approle v0.6.0 h1:ELfFFQlTM/e97WJKu1HvNFa7lQ3tlTwwzrR1NJE1V7Y= github.com/hashicorp/vault/api/auth/approle v0.6.0/go.mod h1:CCoIl1xBC3lAWpd1HV+0ovk76Z8b8Mdepyk21h3pGk0= @@ -543,7 +545,6 @@ github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNx github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= -github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= @@ -1038,7 +1039,6 @@ golang.org/x/sys v0.0.0-20220502124256-b6088ccd6cba/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1345,8 +1345,8 @@ google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQ google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.32.0 h1:pPC6BG5ex8PDFnkbrGU3EixyhKcQ2aDuBS36lqK/C7I= -google.golang.org/protobuf v1.32.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= +google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -1401,8 +1401,8 @@ k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= k8s.io/api v0.23.5/go.mod h1:Na4XuKng8PXJ2JsploYYrivXrINeTaycCGcYgF91Xm8= k8s.io/api v0.26.0/go.mod h1:k6HDTaIFC8yn1i6pSClSqIwLABIcLV9l5Q4EcngKnQg= -k8s.io/api v0.29.2 h1:hBC7B9+MU+ptchxEqTNW2DkUosJpp1P+Wn6YncZ474A= -k8s.io/api v0.29.2/go.mod h1:sdIaaKuU7P44aoyyLlikSLayT6Vb7bvJNCX105xZXY0= +k8s.io/api v0.29.3 h1:2ORfZ7+bGC3YJqGpV0KSDDEVf8hdGQ6A03/50vj8pmw= +k8s.io/api v0.29.3/go.mod h1:y2yg2NTyHUUkIoTC+phinTnEa3KFM6RZ3szxt014a80= k8s.io/apiextensions-apiserver v0.0.0-20190409022649-727a075fdec8/go.mod h1:IxkesAMoaCRoLrPJdZNZUQp9NfZnzqaVzLhb2VEQzXE= k8s.io/apiextensions-apiserver v0.18.3/go.mod h1:TMsNGs7DYpMXd+8MOCX8KzPOCx8fnZMoIGB24m03+JE= k8s.io/apiextensions-apiserver v0.20.1/go.mod h1:ntnrZV+6a3dB504qwC5PN/Yg9PBiDNt1EVqbW2kORVk= @@ -1415,8 +1415,8 @@ k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRp k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= k8s.io/apimachinery v0.23.5/go.mod h1:BEuFMMBaIbcOqVIJqNZJXGFTP4W6AycEpb5+m/97hrM= k8s.io/apimachinery v0.26.0/go.mod h1:tnPmbONNJ7ByJNz9+n9kMjNP8ON+1qoAIIC70lztu74= -k8s.io/apimachinery v0.29.2 h1:EWGpfJ856oj11C52NRCHuU7rFDwxev48z+6DSlGNsV8= -k8s.io/apimachinery v0.29.2/go.mod h1:6HVkd1FwxIagpYrHSwJlQqZI3G9LfYWRPAkUvLnXTKU= +k8s.io/apimachinery v0.29.3 h1:2tbx+5L7RNvqJjn7RIuIKu9XTsIZ9Z5wX2G22XAa5EU= +k8s.io/apimachinery v0.29.3/go.mod h1:hx/S4V2PNW4OMg3WizRrHutyB5la0iCUbZym+W0EQIU= k8s.io/apiserver v0.18.3/go.mod h1:tHQRmthRPLUtwqsOnJJMoI8SW3lnoReZeE861lH8vUw= k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= k8s.io/client-go v0.18.3/go.mod h1:4a/dpQEvzAhT1BbuWW09qvIaGw6Gbu1gZYiQZIi1DMw= @@ -1425,8 +1425,8 @@ k8s.io/client-go v0.19.2/go.mod h1:S5wPhCqyDNAlzM9CnEdgTGV4OqhsW3jGO1UM1epwfJA= k8s.io/client-go v0.20.0/go.mod h1:4KWh/g+Ocd8KkCwKF8vUNnmqgv+EVnQDK4MBF4oB5tY= k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= k8s.io/client-go v0.23.5/go.mod h1:flkeinTO1CirYgzMPRWxUCnV0G4Fbu2vLhYCObnt/r4= -k8s.io/client-go v0.29.2 h1:FEg85el1TeZp+/vYJM7hkDlSTFZ+c5nnK44DJ4FyoRg= -k8s.io/client-go v0.29.2/go.mod h1:knlvFZE58VpqbQpJNbCbctTVXcd35mMyAAwBdpt4jrA= +k8s.io/client-go v0.29.3 h1:R/zaZbEAxqComZ9FHeQwOh3Y1ZUs7FaHKZdQtIc2WZg= +k8s.io/client-go v0.29.3/go.mod h1:tkDisCvgPfiRpxGnOORfkljmS+UrW+WtXAy2fTvXJB0= k8s.io/code-generator v0.18.3/go.mod h1:TgNEVx9hCyPGpdtCWA34olQYLkh3ok9ar7XfSsr8b6c= k8s.io/code-generator v0.19.0/go.mod h1:moqLn7w0t9cMs4+5CQyxnfA/HV8MF6aAVENF+WZZhgk= k8s.io/code-generator v0.20.0/go.mod h1:UsqdF+VX4PU2g46NC2JRs4gc+IfrctnwHb76RNbWHJg= From cf2a66ff52f7394f473eb01037cb17529777efc2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 26 Mar 2024 15:37:15 +0000 Subject: [PATCH 5/5] build(deps): bump the github-dependencies group with 1 update Bumps the github-dependencies group with 1 update: [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go). Updates `github.com/aws/aws-sdk-go` from 1.51.6 to 1.51.7 - [Release notes](https://github.com/aws/aws-sdk-go/releases) - [Commits](https://github.com/aws/aws-sdk-go/compare/v1.51.6...v1.51.7) --- updated-dependencies: - dependency-name: github.com/aws/aws-sdk-go dependency-type: direct:production update-type: version-update:semver-patch dependency-group: github-dependencies ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 644bdb9e8139..8d9b1dddf559 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ replace ( require ( github.com/IBM/keyprotect-go-client v0.12.2 - github.com/aws/aws-sdk-go v1.51.6 + github.com/aws/aws-sdk-go v1.51.7 github.com/banzaicloud/k8s-objectmatcher v1.8.0 github.com/ceph/go-ceph v0.26.0 github.com/coreos/pkg v0.0.0-20230601102743-20bbbf26f4d8 diff --git a/go.sum b/go.sum index 46e7f8ce18d4..7b351b756683 100644 --- a/go.sum +++ b/go.sum @@ -138,8 +138,8 @@ github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkY github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= github.com/aws/aws-sdk-go v1.44.164/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= -github.com/aws/aws-sdk-go v1.51.6 h1:Ld36dn9r7P9IjU8WZSaswQ8Y/XUCRpewim5980DwYiU= -github.com/aws/aws-sdk-go v1.51.6/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= +github.com/aws/aws-sdk-go v1.51.7 h1:RRjxHhx9RCjw5AhgpmmShq3F4JDlleSkyhYMQ2xUAe8= +github.com/aws/aws-sdk-go v1.51.7/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/banzaicloud/k8s-objectmatcher v1.8.0 h1:Nugn25elKtPMTA2br+JgHNeSQ04sc05MDPmpJnd1N2A= github.com/banzaicloud/k8s-objectmatcher v1.8.0/go.mod h1:p2LSNAjlECf07fbhDyebTkPUIYnU05G+WfGgkTmgeMg= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=