@@ -58,18 +58,18 @@ func labelsForWireguard(name string) map[string]string {
5858 return map [string ]string {"app" : "wireguard" , "instance" : name }
5959}
6060
61- func (r * WireguardReconciler ) ConfigmapForWireguard (m * v1alpha1.Wireguard , hostname string ) (* corev1.ConfigMap , error ) {
61+ func (r * WireguardReconciler ) ConfigmapForWireguard (m * v1alpha1.Wireguard , hostname string ) * corev1.ConfigMap {
62+ ls := labelsForWireguard (m .Name )
6263 dep := & corev1.ConfigMap {
6364 ObjectMeta : metav1.ObjectMeta {
6465 Name : m .Name + "-config" ,
6566 Namespace : m .Namespace ,
66- Labels : labelsForWireguard ( m . Name ) ,
67+ Labels : ls ,
6768 },
6869 }
69- if err := ctrl .SetControllerReference (m , dep , r .Scheme ); err != nil {
70- return nil , fmt .Errorf ("set controller reference: %w" , err )
71- }
72- return dep , nil
70+
71+ ctrl .SetControllerReference (m , dep , r .Scheme )
72+ return dep
7373}
7474
7575func (r * WireguardReconciler ) getWireguardPeers (ctx context.Context , req ctrl.Request ) (* v1alpha1.WireguardPeerList , error ) {
@@ -311,11 +311,7 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
311311 err = r .Get (ctx , types.NamespacedName {Name : wireguard .Name + "-metrics-svc" , Namespace : wireguard .Namespace }, svcFound )
312312 if err != nil && errors .IsNotFound (err ) {
313313
314- svc , err := r .serviceForWireguardMetrics (wireguard )
315- if err != nil {
316- return ctrl.Result {}, fmt .Errorf ("service for wireguard metrics: %w" , err )
317- }
318-
314+ svc := r .serviceForWireguardMetrics (wireguard )
319315 log .Info ("Creating a new service" , "service.Namespace" , svc .Namespace , "service.Name" , svc .Name )
320316 err = r .Create (ctx , svc )
321317 if err != nil {
@@ -361,11 +357,7 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
361357
362358 err = r .Get (ctx , types.NamespacedName {Name : wireguard .Name + "-svc" , Namespace : wireguard .Namespace }, svcFound )
363359 if err != nil && errors .IsNotFound (err ) {
364- svc , err := r .serviceForWireguard (wireguard , serviceType )
365- if err != nil {
366- return ctrl.Result {}, fmt .Errorf ("service for wireguard: %w" , err )
367- }
368-
360+ svc := r .serviceForWireguard (wireguard , serviceType )
369361 log .Info ("Creating a new service" , "service.Namespace" , svc .Namespace , "service.Name" , svc .Name )
370362 err = r .Create (ctx , svc )
371363 if err != nil {
@@ -487,15 +479,10 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
487479
488480 if ! bytes .Equal (b , secret .Data ["state.json" ]) {
489481 log .Info ("Updating secret with new config" )
490-
491482 publicKey := string (secret .Data ["publicKey" ])
492483
493- secret , err := r .secretForWireguard (wireguard , b , privateKey , publicKey )
484+ err := r .Update ( ctx , r . secretForWireguard (wireguard , b , privateKey , publicKey ) )
494485 if err != nil {
495- return ctrl.Result {}, fmt .Errorf ("secret for wireguard: %w" , err )
496- }
497-
498- if err := r .Update (ctx , secret ); err != nil {
499486 log .Error (err , "Failed to update secret with new config" )
500487 return ctrl.Result {}, err
501488 }
@@ -547,39 +534,14 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
547534 return ctrl.Result {}, err
548535 }
549536
550- bytes .Equal (b , secret .Data ["state" ])
551-
552- secret , err := r .secretForWireguard (wireguard , b , privateKey , publicKey )
553- if err != nil {
554- return ctrl.Result {}, fmt .Errorf ("secret for wireguard: %w" , err )
555- }
537+ secret := r .secretForWireguard (wireguard , b , privateKey , publicKey )
556538
557539 log .Info ("Creating a new secret" , "secret.Namespace" , secret .Namespace , "secret.Name" , secret .Name )
558540
559541 if err := r .Create (ctx , secret ); err != nil {
560542 log .Error (err , "Failed to create new secret" , "secret.Namespace" , secret .Namespace , "secret.Name" , secret .Name )
561543 return ctrl.Result {}, err
562544 }
563-
564- clientKey , err := wgtypes .GeneratePrivateKey ()
565-
566- if err != nil {
567- log .Error (err , "Failed to generate private key" )
568- return ctrl.Result {}, err
569- }
570-
571- clientSecret , err := r .secretForClient (wireguard , clientKey .String (), clientKey .PublicKey ().String ())
572- if err != nil {
573- return ctrl.Result {}, fmt .Errorf ("secret for client: %w" , err )
574- }
575-
576- log .Info ("Creating a new secret" , "secret.Namespace" , clientSecret .Namespace , "secret.Name" , clientSecret .Name )
577- err = r .Create (ctx , clientSecret )
578- if err != nil {
579- log .Error (err , "Failed to create new secret" , "secret.Namespace" , clientSecret .Namespace , "secret.Name" , clientSecret .Name )
580- return ctrl.Result {}, err
581- }
582-
583545 return ctrl.Result {}, err
584546 } else if err != nil {
585547 log .Error (err , "Failed to get secret" )
@@ -591,14 +553,10 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
591553 configFound := & corev1.ConfigMap {}
592554 err = r .Get (ctx , types.NamespacedName {Name : wireguard .Name + "-config" , Namespace : wireguard .Namespace }, configFound )
593555 if err != nil && errors .IsNotFound (err ) {
594- config , err := r .ConfigmapForWireguard (wireguard , address )
595- if err != nil {
596- return ctrl.Result {}, fmt .Errorf ("config map for wireguard: %w" , err )
597- }
598-
556+ config := r .ConfigmapForWireguard (wireguard , address )
599557 log .Info ("Creating a new config" , "config.Namespace" , config .Namespace , "config.Name" , config .Name )
600-
601- if err := r . Create ( ctx , config ); err != nil {
558+ err = r . Create ( ctx , config )
559+ if err != nil {
602560 log .Error (err , "Failed to create new dep" , "dep.Namespace" , config .Namespace , "dep.Name" , config .Name )
603561 return ctrl.Result {}, err
604562 }
@@ -616,11 +574,7 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
616574 deploymentFound := & appsv1.Deployment {}
617575 err = r .Get (ctx , types.NamespacedName {Name : wireguard .Name + "-dep" , Namespace : wireguard .Namespace }, deploymentFound )
618576 if err != nil && errors .IsNotFound (err ) {
619- dep , err := r .deploymentForWireguard (wireguard )
620- if err != nil {
621- return ctrl.Result {}, fmt .Errorf ("deployment for wireguard: %w" , err )
622- }
623-
577+ dep := r .deploymentForWireguard (wireguard )
624578 log .Info ("Creating a new dep" , "dep.Namespace" , dep .Namespace , "dep.Name" , dep .Name )
625579 err = r .Create (ctx , dep )
626580 if err != nil {
@@ -635,12 +589,9 @@ func (r *WireguardReconciler) Reconcile(ctx context.Context, req ctrl.Request) (
635589 }
636590
637591 if deploymentFound .Spec .Template .Spec .Containers [0 ].Image != r .AgentImage {
638- dep , err := r .deploymentForWireguard (wireguard )
592+ dep := r .deploymentForWireguard (wireguard )
593+ err = r .Update (ctx , dep )
639594 if err != nil {
640- return ctrl.Result {}, fmt .Errorf ("deployment for wireguard: %w" , err )
641- }
642-
643- if err := r .Update (ctx , dep ); err != nil {
644595 log .Error (err , "unable to update deployment image" , "dep.Namespace" , dep .Namespace , "dep.Name" , dep .Name )
645596 return ctrl.Result {}, err
646597 }
@@ -673,10 +624,10 @@ func (r *WireguardReconciler) SetupWithManager(mgr ctrl.Manager) error {
673624 Complete (r )
674625}
675626
676- func (r * WireguardReconciler ) serviceForWireguard (m * v1alpha1.Wireguard , serviceType corev1.ServiceType ) ( * corev1.Service , error ) {
627+ func (r * WireguardReconciler ) serviceForWireguard (m * v1alpha1.Wireguard , serviceType corev1.ServiceType ) * corev1.Service {
677628 labels := labelsForWireguard (m .Name )
678629
679- svc := & corev1.Service {
630+ dep := & corev1.Service {
680631 ObjectMeta : metav1.ObjectMeta {
681632 Name : m .Name + "-svc" ,
682633 Namespace : m .Namespace ,
@@ -695,20 +646,18 @@ func (r *WireguardReconciler) serviceForWireguard(m *v1alpha1.Wireguard, service
695646 },
696647 }
697648
698- if svc .Spec .Type == corev1 .ServiceTypeLoadBalancer {
699- svc .Spec .LoadBalancerIP = m .Spec .Address
649+ if dep .Spec .Type == corev1 .ServiceTypeLoadBalancer {
650+ dep .Spec .LoadBalancerIP = m .Spec .Address
700651 }
701652
702- if err := ctrl .SetControllerReference (m , svc , r .Scheme ); err != nil {
703- return nil , fmt .Errorf ("set controller reference: %w" , err )
704- }
705- return svc , nil
653+ ctrl .SetControllerReference (m , dep , r .Scheme )
654+ return dep
706655}
707656
708- func (r * WireguardReconciler ) serviceForWireguardMetrics (m * v1alpha1.Wireguard ) ( * corev1.Service , error ) {
657+ func (r * WireguardReconciler ) serviceForWireguardMetrics (m * v1alpha1.Wireguard ) * corev1.Service {
709658 labels := labelsForWireguard (m .Name )
710659
711- svc := & corev1.Service {
660+ dep := & corev1.Service {
712661 ObjectMeta : metav1.ObjectMeta {
713662 Name : m .Name + "-metrics-svc" ,
714663 Namespace : m .Namespace ,
@@ -726,48 +675,29 @@ func (r *WireguardReconciler) serviceForWireguardMetrics(m *v1alpha1.Wireguard)
726675 },
727676 }
728677
729- if err := ctrl .SetControllerReference (m , svc , r .Scheme ); err != nil {
730- return nil , fmt .Errorf ("set controller reference: %w" , err )
731- }
732- return svc , nil
678+ ctrl .SetControllerReference (m , dep , r .Scheme )
679+ return dep
733680}
734681
735- func (r * WireguardReconciler ) secretForWireguard (m * v1alpha1.Wireguard , state []byte , privateKey string , publicKey string ) (* corev1.Secret , error ) {
736- secret := & corev1.Secret {
682+ func (r * WireguardReconciler ) secretForWireguard (m * v1alpha1.Wireguard , state []byte , privateKey string , publicKey string ) * corev1.Secret {
683+
684+ ls := labelsForWireguard (m .Name )
685+ dep := & corev1.Secret {
737686 ObjectMeta : metav1.ObjectMeta {
738687 Name : m .Name ,
739688 Namespace : m .Namespace ,
740- Labels : labelsForWireguard ( m . Name ) ,
689+ Labels : ls ,
741690 },
742691 Data : map [string ][]byte {"state.json" : state , "privateKey" : []byte (privateKey ), "publicKey" : []byte (publicKey )},
743692 }
744693
745- if err := ctrl .SetControllerReference (m , secret , r .Scheme ); err != nil {
746- return nil , fmt .Errorf ("set controller reference: %w" , err )
747- }
748-
749- return secret , nil
750-
751- }
752-
753- func (r * WireguardReconciler ) secretForClient (m * v1alpha1.Wireguard , privateKey string , publicKey string ) (* corev1.Secret , error ) {
754- secret := & corev1.Secret {
755- ObjectMeta : metav1.ObjectMeta {
756- Name : m .Name + "-client" ,
757- Namespace : m .Namespace ,
758- Labels : labelsForWireguard (m .Name ),
759- },
760- Data : map [string ][]byte {"privateKey" : []byte (privateKey ), "publicKey" : []byte (publicKey )},
761- }
694+ ctrl .SetControllerReference (m , dep , r .Scheme )
762695
763- if err := ctrl .SetControllerReference (m , secret , r .Scheme ); err != nil {
764- return nil , fmt .Errorf ("set controller reference: %w" , err )
765- }
766- return secret , nil
696+ return dep
767697
768698}
769699
770- func (r * WireguardReconciler ) deploymentForWireguard (m * v1alpha1.Wireguard ) ( * appsv1.Deployment , error ) {
700+ func (r * WireguardReconciler ) deploymentForWireguard (m * v1alpha1.Wireguard ) * appsv1.Deployment {
771701 ls := labelsForWireguard (m .Name )
772702 replicas := int32 (1 )
773703
@@ -910,8 +840,6 @@ func (r *WireguardReconciler) deploymentForWireguard(m *v1alpha1.Wireguard) (*ap
910840 }
911841 }
912842
913- if err := ctrl .SetControllerReference (m , dep , r .Scheme ); err != nil {
914- return dep , fmt .Errorf ("set controller reference: %w" , err )
915- }
916- return dep , nil
843+ ctrl .SetControllerReference (m , dep , r .Scheme )
844+ return dep
917845}
0 commit comments