Skip to content

Commit

Permalink
Merge pull request kubesphere#3796 from wansir/fix-3784
Browse files Browse the repository at this point in the history
Fix SelectorFromSet ignore errors and select everything
  • Loading branch information
ks-ci-bot authored Apr 29, 2021
2 parents cf8d71c + 1b33d6e commit 24ee832
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 4 deletions.
15 changes: 12 additions & 3 deletions pkg/controller/group/group_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ import (
"fmt"
"reflect"

"k8s.io/apimachinery/pkg/util/validation"

corev1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
Expand Down Expand Up @@ -237,10 +239,13 @@ func (c *Controller) reconcile(key string) error {
}

func (c *Controller) deleteGroupBindings(group *iam1alpha2.Group) error {

if len(group.Name) > validation.LabelValueMaxLength {
// ignore invalid label value error
return nil
}
// Groupbindings that created by kubesphere will be deleted directly.
listOptions := metav1.ListOptions{
LabelSelector: labels.SelectorFromSet(labels.Set{iam1alpha2.GroupReferenceLabel: group.Name}).String(),
LabelSelector: labels.SelectorFromValidatedSet(labels.Set{iam1alpha2.GroupReferenceLabel: group.Name}).String(),
}
if err := c.ksClient.IamV1alpha2().GroupBindings().
DeleteCollection(context.Background(), *metav1.NewDeleteOptions(0), listOptions); err != nil {
Expand All @@ -252,8 +257,12 @@ func (c *Controller) deleteGroupBindings(group *iam1alpha2.Group) error {

// remove all RoleBindings.
func (c *Controller) deleteRoleBindings(group *iam1alpha2.Group) error {
if len(group.Name) > validation.LabelValueMaxLength {
// ignore invalid label value error
return nil
}
listOptions := metav1.ListOptions{
LabelSelector: labels.SelectorFromSet(labels.Set{iam1alpha2.GroupReferenceLabel: group.Name}).String(),
LabelSelector: labels.SelectorFromValidatedSet(labels.Set{iam1alpha2.GroupReferenceLabel: group.Name}).String(),
}
deleteOptions := *metav1.NewDeleteOptions(0)

Expand Down
8 changes: 7 additions & 1 deletion pkg/controller/user/user_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ import (
"reflect"
"time"

"k8s.io/apimachinery/pkg/util/validation"

utilwait "k8s.io/apimachinery/pkg/util/wait"

"kubesphere.io/kubesphere/pkg/controller/utils/controller"
Expand Down Expand Up @@ -486,8 +488,12 @@ func (c *userController) deleteGroupBindings(user *iamv1alpha2.User) error {
}

func (c *userController) deleteRoleBindings(user *iamv1alpha2.User) error {
if len(user.Name) > validation.LabelValueMaxLength {
// ignore invalid label value error
return nil
}
listOptions := metav1.ListOptions{
LabelSelector: labels.SelectorFromSet(labels.Set{iamv1alpha2.UserReferenceLabel: user.Name}).String(),
LabelSelector: labels.SelectorFromValidatedSet(labels.Set{iamv1alpha2.UserReferenceLabel: user.Name}).String(),
}
deleteOptions := *metav1.NewDeleteOptions(0)
if err := c.ksClient.IamV1alpha2().GlobalRoleBindings().
Expand Down

0 comments on commit 24ee832

Please sign in to comment.