Skip to content

Commit

Permalink
Allow empty subjects list (#323)
Browse files Browse the repository at this point in the history
  • Loading branch information
Andrew Suderman authored Jul 28, 2022
1 parent 117d6aa commit 7806832
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 27 deletions.
4 changes: 0 additions & 4 deletions pkg/reconciler/parser.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,6 @@ func (p *Parser) Parse(rbacDef rbacmanagerv1beta1.RBACDefinition) error {
}

func (p *Parser) parseRBACBinding(rbacBinding rbacmanagerv1beta1.RBACBinding, namePrefix string, namespaces *v1.NamespaceList) error {
if len(rbacBinding.Subjects) < 1 {
return errors.New("No subjects specified for RBAC Binding: " + namePrefix)
}

for _, requestedSubject := range rbacBinding.Subjects {
if requestedSubject.Kind == "ServiceAccount" {
pullsecrets := []v1.LocalObjectReference{}
Expand Down
23 changes: 0 additions & 23 deletions pkg/reconciler/parser_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -267,29 +267,6 @@ func TestParseMissingNamespace(t *testing.T) {
newParseTest(t, client, rbacDef, []rbacv1.RoleBinding{}, []rbacv1.ClusterRoleBinding{}, []corev1.ServiceAccount{})
}

func TestParseMissingSubjects(t *testing.T) {
client := fake.NewSimpleClientset()
rbacDef := rbacmanagerv1beta1.RBACDefinition{}
rbacDef.Name = "rbac-config"

createNamespace(t, client, "web", map[string]string{"app": "web", "team": "devs"})
createNamespace(t, client, "api", map[string]string{"app": "api", "team": "devs"})
createNamespace(t, client, "db", map[string]string{"app": "db", "team": "db"})

rbacDef.RBACBindings = []rbacmanagerv1beta1.RBACBinding{{
Name: "devs",
Subjects: []rbacmanagerv1beta1.Subject{},
RoleBindings: []rbacmanagerv1beta1.RoleBinding{{
NamespaceSelector: metav1.LabelSelector{
MatchLabels: map[string]string{"team": "devs"},
},
ClusterRole: "edit",
}},
}}

newParseTest(t, client, rbacDef, []rbacv1.RoleBinding{}, []rbacv1.ClusterRoleBinding{}, []corev1.ServiceAccount{})
}

func TestManagerToRbacSubjects(t *testing.T) {
expected := []rbacv1.Subject{
{
Expand Down

0 comments on commit 7806832

Please sign in to comment.