@@ -627,115 +627,82 @@ func (r *MicroK8sConfigReconciler) storeBootstrapData(ctx context.Context, scope
627627func (r * MicroK8sConfigReconciler ) getJoinToken (ctx context.Context , scope * Scope ) (string , error ) {
628628 // See if the token exists. If not create it.
629629 secret := & corev1.Secret {}
630-
631- var found bool
632630 err := r .Client .Get (ctx , types.NamespacedName {
633631 Namespace : scope .Cluster .Namespace ,
634632 Name : fmt .Sprintf ("%s-jointoken" , scope .Cluster .Name ),
635633 }, secret )
636634 switch {
637635 case err == nil :
638- found = true
636+ return string ( secret . Data [ "value" ]), nil
639637 case apierrors .IsNotFound (err ):
640638 default :
641639 return "" , err
642640 }
643641
644- if ! found {
645- const letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
646- b := make ([]byte , 32 )
647- for i := range b {
648- b [i ] = letters [mrand .Intn (len (letters ))]
649- }
650- token := string (b )
651- tokenSecret := & corev1.Secret {
652- ObjectMeta : metav1.ObjectMeta {
653- Namespace : scope .Cluster .Namespace ,
654- Name : scope .Cluster .Name + "-jointoken" ,
655- },
656- Data : map [string ][]byte {
657- "value" : []byte (token ),
658- },
659- }
660- err = r .Client .Create (ctx , tokenSecret )
661- if err != nil {
662- return "" , err
663- }
642+ const letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
643+ b := make ([]byte , 32 )
644+ for i := range b {
645+ b [i ] = letters [mrand .Intn (len (letters ))]
664646 }
665-
666- readTokenSecret := & corev1.Secret {}
667- err = r .Client .Get (ctx ,
668- types.NamespacedName {
647+ token := string (b )
648+ tokenSecret := & corev1.Secret {
649+ ObjectMeta : metav1.ObjectMeta {
669650 Namespace : scope .Cluster .Namespace ,
670651 Name : scope .Cluster .Name + "-jointoken" ,
671652 },
672- readTokenSecret ,
673- )
674- if err != nil {
653+ Data : map [string ][]byte {
654+ "value" : []byte (token ),
655+ },
656+ }
657+ if err := r .Client .Create (ctx , tokenSecret ); err != nil {
675658 return "" , err
676659 }
677660
678- return string ( readTokenSecret . Data [ "value" ]) , nil
661+ return token , nil
679662}
680663
681664func (r * MicroK8sConfigReconciler ) getCA (ctx context.Context , scope * Scope ) (cert * string , key * string , err error ) {
682665 // See if the CA cert exists. If not create it.
683- caSecret := & corev1.Secret {}
666+ secret := & corev1.Secret {}
684667
685- var found bool
686668 err = r .Client .Get (ctx , types.NamespacedName {
687669 Namespace : scope .Cluster .Namespace ,
688670 Name : fmt .Sprintf ("%s-ca" , scope .Cluster .Name ),
689- }, caSecret )
671+ }, secret )
690672 switch {
691673 case err == nil :
692- found = true
674+ cert := string (secret .Data ["crt" ])
675+ key := string (secret .Data ["key" ])
676+ return & cert , & key , nil
693677 case apierrors .IsNotFound (err ):
694678 default :
695679 return nil , nil , err
696680 }
697681
698- if ! found {
699- newcrt , newkey , err := r .generateCA ()
700- if err != nil {
701- return nil , nil , err
702- }
703- caSecret := & corev1.Secret {
704- ObjectMeta : metav1.ObjectMeta {
705- Namespace : scope .Cluster .Namespace ,
706- Name : scope .Cluster .Name + "-ca" ,
707- },
708- Data : map [string ][]byte {
709- // these are the expected names for the certificate and key
710- "tls.crt" : []byte (* newcrt ),
711- "tls.key" : []byte (* newkey ),
712-
713- // these are here for backwards-compatibility with older versions of the providers
714- "crt" : []byte (* newcrt ),
715- "key" : []byte (* newkey ),
716- },
717- }
718- err = r .Client .Create (ctx , caSecret )
719- if err != nil {
720- return nil , nil , err
721- }
682+ newcrt , newkey , err := r .generateCA ()
683+ if err != nil {
684+ return nil , nil , err
722685 }
723-
724- readCASecret := & corev1.Secret {}
725- err = r .Client .Get (ctx ,
726- types.NamespacedName {
686+ caSecret := & corev1.Secret {
687+ ObjectMeta : metav1.ObjectMeta {
727688 Namespace : scope .Cluster .Namespace ,
728689 Name : scope .Cluster .Name + "-ca" ,
729690 },
730- readCASecret ,
731- )
732- if err != nil {
691+ Data : map [string ][]byte {
692+ // these are the expected names for the certificate and key
693+ "tls.crt" : []byte (* newcrt ),
694+ "tls.key" : []byte (* newkey ),
695+
696+ // these are here for backwards-compatibility with older versions of the providers
697+ "crt" : []byte (* newcrt ),
698+ "key" : []byte (* newkey ),
699+ },
700+ }
701+ if err := r .Client .Create (ctx , caSecret ); err != nil {
733702 return nil , nil , err
734703 }
735704
736- certstr := string (readCASecret .Data ["crt" ])
737- keystr := string (readCASecret .Data ["key" ])
738- return & certstr , & keystr , nil
705+ return newcrt , newkey , nil
739706}
740707
741708func (r * MicroK8sConfigReconciler ) generateCA () (cert * string , key * string , err error ) {
0 commit comments