Skip to content

Commit c779a46

Browse files
authored
fix: revert golint setup as it introduce bug on netlink add
* revert back to 2.4.0 * cherry pick 2.6.1 * cherry pick 2.6.0
1 parent af353df commit c779a46

File tree

8 files changed

+78
-216
lines changed

8 files changed

+78
-216
lines changed

.github/workflows/golangci-lint.yml

-27
This file was deleted.

CHANGELOG.md

-21
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,3 @@
1-
## [2.6.1](https://github.com/jodevsa/wireguard-operator/compare/v2.6.0...v2.6.1) (2024-07-17)
2-
3-
4-
### Bug Fixes
5-
6-
* only add address as loadbalancerIP if svc type is LoadBalancer ([#203](https://github.com/jodevsa/wireguard-operator/issues/203)) ([56a609d](https://github.com/jodevsa/wireguard-operator/commit/56a609df561dd4d47509a6d6f406e4785a715890))
7-
8-
# [2.6.0](https://github.com/jodevsa/wireguard-operator/compare/v2.5.0...v2.6.0) (2024-07-17)
9-
10-
11-
### Features
12-
13-
* support ClusterIP service ([#201](https://github.com/jodevsa/wireguard-operator/issues/201)) ([a82d2bb](https://github.com/jodevsa/wireguard-operator/commit/a82d2bbeb26e5297d935d83556ba18f596878af8))
14-
15-
# [2.5.0](https://github.com/jodevsa/wireguard-operator/compare/v2.4.0...v2.5.0) (2024-07-15)
16-
17-
18-
### Features
19-
20-
* add golint support ([71150ea](https://github.com/jodevsa/wireguard-operator/commit/71150ea483dbf9f605d75fff86bc4dd91de92414))
21-
221
# [2.4.0](https://github.com/jodevsa/wireguard-operator/compare/v2.3.2...v2.4.0) (2024-07-15)
232

243

README.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,12 @@ Endpoint = 32.121.45.102:51820
8383

8484
## How to deploy
8585
```
86-
kubectl apply -f https://github.com/jodevsa/wireguard-operator/releases/download/v2.5.0/release.yaml
86+
kubectl apply -f https://github.com/jodevsa/wireguard-operator/releases/download/v2.1.0/release.yaml
8787
```
8888

8989
## How to remove
9090
```
91-
kubectl delete -f https://github.com/jodevsa/wireguard-operator/releases/download/v2.5.0/release.yaml
91+
kubectl delete -f https://github.com/jodevsa/wireguard-operator/releases/download/v2.1.0/release.yaml
9292
```
9393

9494
## How to collaborate

internal/it/suite_test.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ func waitForDeploymentTobeReady(name string, namespace string) {
6060
}
6161

6262
deployment := &v12.Deployment{}
63-
Expect(k8sClient.Get(context.Background(), deploymentKey, deployment)).Should(Succeed())
63+
k8sClient.Get(context.Background(), deploymentKey, deployment)
6464
return int(deployment.Status.ReadyReplicas)
6565
}, Timeout, Interval).Should(Equal(1))
6666

@@ -73,7 +73,7 @@ func WaitForWireguardToBeReady(name string, namespace string) {
7373
Name: name,
7474
}
7575
wg := &v1alpha1.Wireguard{}
76-
Expect(k8sClient.Get(context.Background(), wgKey, wg)).Should(Succeed())
76+
k8sClient.Get(context.Background(), wgKey, wg)
7777
return wg.Status.Status
7878
}, Timeout, Interval).Should(Equal(v1alpha1.Ready))
7979

@@ -86,7 +86,7 @@ func WaitForPeerToBeReady(name string, namespace string) {
8686
Name: name,
8787
}
8888
wg := &v1alpha1.WireguardPeer{}
89-
Expect(k8sClient.Get(context.Background(), wgKey, wg)).Should(Succeed())
89+
k8sClient.Get(context.Background(), wgKey, wg)
9090
return wg.Status.Status
9191
}, Timeout, Interval).Should(Equal(v1alpha1.Ready))
9292

@@ -228,7 +228,7 @@ var _ = BeforeSuite(func() {
228228
}
229229

230230
deployment := &v12.Deployment{}
231-
Expect(k8sClient.Get(context.Background(), deploymentKey, deployment)).Should(Succeed())
231+
k8sClient.Get(context.Background(), deploymentKey, deployment)
232232
return int(deployment.Status.ReadyReplicas)
233233
}, Timeout, Interval).Should(Equal(1))
234234

pkg/agent/agent.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@ import (
55
"encoding/hex"
66
"encoding/json"
77
"fmt"
8+
"github.com/go-logr/logr"
89
"os"
910
"path/filepath"
1011

1112
"github.com/fsnotify/fsnotify"
12-
"github.com/go-logr/logr"
1313
"github.com/jodevsa/wireguard-operator/pkg/api/v1alpha1"
1414
)
1515

pkg/controllers/wireguard_controller.go

+36-108
Original file line numberDiff line numberDiff line change
@@ -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

7575
func (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

Comments
 (0)