github.com/interconnectedcloud/qdr-operator@v0.0.0-20210826174505-576d2b33dac7/pkg/resources/rolebindings/rolebinding.go (about) 1 package rolebindings 2 3 import ( 4 v1alpha1 "github.com/interconnectedcloud/qdr-operator/pkg/apis/interconnectedcloud/v1alpha1" 5 rbacv1 "k8s.io/api/rbac/v1" 6 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" 7 ) 8 9 // Create NewRoleBindingForCR method to create rolebinding 10 func NewRoleBindingForCR(m *v1alpha1.Interconnect) *rbacv1.RoleBinding { 11 rolebinding := &rbacv1.RoleBinding{ 12 TypeMeta: metav1.TypeMeta{ 13 APIVersion: "rbac.authorization.k8s.io/v1", 14 Kind: "RoleBinding", 15 }, 16 ObjectMeta: metav1.ObjectMeta{ 17 Name: m.Name, 18 Namespace: m.Namespace, 19 }, 20 Subjects: []rbacv1.Subject{{ 21 Kind: "ServiceAccount", 22 Name: m.Name, 23 }}, 24 RoleRef: rbacv1.RoleRef{ 25 Kind: "Role", 26 Name: m.Name, 27 }, 28 } 29 30 return rolebinding 31 }