@@ -75,8 +75,8 @@ type roleBinding struct {
7575}
7676
7777// serviceAccount implements create ServiceAccount
78- type serviceAccount struct {
79- name string
78+ type ServiceAccount struct {
79+ Name string
8080 labels labels
8181 namespace string
8282}
@@ -85,7 +85,7 @@ type rbacResources struct {
8585 clusterRoles []clusterRole
8686 clusterRoleBindings []clusterRoleBinding
8787 roleBindings []roleBinding
88- serviceAccount serviceAccount
88+ serviceAccount ServiceAccount
8989}
9090
9191// RBACHandler implements getting, creating and deleting resources
@@ -221,8 +221,8 @@ func (rh *RBACHandler) listServiceAccount() ([]string, error) {
221221 return serviceAccList , nil
222222}
223223
224- func (rh * RBACHandler ) createServiceAccount (sa * serviceAccount ) error {
225- if _ , err := rh .getAndCheckSA (sa .name ); err == nil {
224+ func (rh * RBACHandler ) createServiceAccount (sa * ServiceAccount ) error {
225+ if _ , err := rh .getAndCheckSA (sa .Name ); err == nil {
226226 return nil
227227 }
228228 saObj := & apicorev1.ServiceAccount {
@@ -231,7 +231,7 @@ func (rh *RBACHandler) createServiceAccount(sa *serviceAccount) error {
231231 APIVersion : "v1" ,
232232 },
233233 ObjectMeta : metav1.ObjectMeta {
234- Name : sa .name ,
234+ Name : sa .Name ,
235235 Namespace : sa .namespace ,
236236 Labels : sa .labels ,
237237 },
@@ -482,8 +482,8 @@ func generateRbacResources(user *tokenhandler.User, config *Config, nameSpaces [
482482 rbacResources := & rbacResources {
483483 clusterRoles : clusterRoles ,
484484 clusterRoleBindings : clusterRoleBindings ,
485- serviceAccount : serviceAccount {
486- name : saName ,
485+ serviceAccount : ServiceAccount {
486+ Name : saName ,
487487 labels : defaultLabel ,
488488 },
489489 roleBindings : roleBindings ,
@@ -510,43 +510,43 @@ func generateClusterRoleRBACResources(config *Config, logger logur.Logger) (*rba
510510}
511511
512512// CreateRBAC create RBAC resources
513- func CreateRBAC (user * tokenhandler.User , config * Config , logger logur.Logger ) error {
513+ func CreateRBAC (user * tokenhandler.User , config * Config , logger logur.Logger ) ( * ServiceAccount , error ) {
514514 logger = log .WithFields (logger , map [string ]interface {}{"package" : "rbachandler" })
515515
516516 rbacHandler , err := NewRBACHandler (config .KubeConfig , logger )
517517 if err != nil {
518- return err
518+ return & ServiceAccount {}, err
519519 }
520520 rbacResources , err := generateRbacResources (user , config , []string {"default" }, logger )
521521 if err != nil {
522522 logger .Error (err .Error (), nil )
523- return err
523+ return & ServiceAccount {}, err
524524 }
525525 if err := rbacHandler .createServiceAccount (& rbacResources .serviceAccount ); err != nil {
526526 logger .Error (err .Error (), nil )
527- return err
527+ return & rbacResources . serviceAccount , err
528528 }
529529 if len (rbacResources .clusterRoles ) > 0 {
530530 for _ , clusterRole := range rbacResources .clusterRoles {
531531 if err := rbacHandler .createClusterRole (& clusterRole ); err != nil {
532532 logger .Error (err .Error (), nil )
533- return err
533+ return & rbacResources . serviceAccount , err
534534 }
535535 }
536536 }
537537 for _ , clusterRoleBinding := range rbacResources .clusterRoleBindings {
538538 if err := rbacHandler .createClusterRoleBinding (& clusterRoleBinding ); err != nil {
539539 logger .Error (err .Error (), nil )
540- return err
540+ return & rbacResources . serviceAccount , err
541541 }
542542 }
543543 for _ , roleBinding := range rbacResources .roleBindings {
544544 if err := rbacHandler .createRoleBinding (& roleBinding ); err != nil {
545545 logger .Error (err .Error (), nil )
546- return err
546+ return & rbacResources . serviceAccount , err
547547 }
548548 }
549- return nil
549+ return & rbacResources . serviceAccount , nil
550550}
551551
552552func (rh * RBACHandler ) getAndCheckSA (saName string ) (* apicorev1.ServiceAccount , error ) {
0 commit comments