Skip to content

Commit

Permalink
use equality.semantics.DeepEqual() wherever possible
Browse files Browse the repository at this point in the history
  • Loading branch information
kasabe28 committed Sep 23, 2024
1 parent ff6e1ef commit b0b74d6
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
10 changes: 6 additions & 4 deletions apinetlet/controllers/network_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import (
"github.com/go-logr/logr"

apinetv1alpha1 "github.com/ironcore-dev/ironcore-net/api/core/v1alpha1"
"github.com/ironcore-dev/ironcore-net/apimachinery/equality"
apinetletclient "github.com/ironcore-dev/ironcore-net/apinetlet/client"
"github.com/ironcore-dev/ironcore-net/apinetlet/handler"
"github.com/ironcore-dev/ironcore-net/apinetlet/provider"
Expand Down Expand Up @@ -116,7 +117,7 @@ func (r *NetworkReconciler) delete(ctx context.Context, log logr.Logger, network
}

log.V(1).Info("Target APINet network is not yet gone, requeueing")
return ctrl.Result{}, nil
return ctrl.Result{Requeue: true}, nil
}

func (r *NetworkReconciler) updateNetworkStatus(ctx context.Context, log logr.Logger, network *networkingv1alpha1.Network, apiNetNetwork *apinetv1alpha1.Network, state networkingv1alpha1.NetworkState) error {
Expand Down Expand Up @@ -144,7 +145,7 @@ func (r *NetworkReconciler) reconcile(ctx context.Context, log logr.Logger, netw
}
if modified {
log.V(1).Info("Added finalizer, requeueing")
return ctrl.Result{}, nil
return ctrl.Result{Requeue: true}, nil
}

apiNetNetwork, err := r.applyAPINetNetwork(ctx, log, network)
Expand All @@ -166,7 +167,7 @@ func (r *NetworkReconciler) reconcile(ctx context.Context, log logr.Logger, netw
}

log.V(1).Info("Set network provider id, requeueing")
return ctrl.Result{}, nil
return ctrl.Result{Requeue: true}, nil
}

log.V(1).Info("Updating network status")
Expand Down Expand Up @@ -214,6 +215,7 @@ func (r *NetworkReconciler) applyAPINetNetwork(ctx context.Context, log logr.Log
}
}
} else {
log.V(1).Info("APINet network already exists")
isNetworkExist = true
}

Expand Down Expand Up @@ -250,7 +252,7 @@ func (r *NetworkReconciler) applyAPINetNetwork(ctx context.Context, log logr.Log

log.V(1).Info("APINet network spec peerings", "old", apiNetNetwork.Spec.Peerings, "new", peerings)
log.V(1).Info("APINet network status", "old", apiNetNetwork.Status.Peerings)
isPeeringsEqual := reflect.DeepEqual(apiNetNetwork.Spec.Peerings, peerings)
isPeeringsEqual := equality.Semantic.DeepEqual(apiNetNetwork.Spec.Peerings, peerings)

if !isNetworkExist || !isPeeringsEqual {
log.V(1).Info("Applying APINet network")
Expand Down
8 changes: 4 additions & 4 deletions metalnetlet/controllers/network_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@ import (
"context"
"fmt"
"reflect"
"slices"

"github.com/go-logr/logr"
"github.com/ironcore-dev/controller-utils/clientutils"
apinetv1alpha1 "github.com/ironcore-dev/ironcore-net/api/core/v1alpha1"
"github.com/ironcore-dev/ironcore-net/apimachinery/api/net"
"github.com/ironcore-dev/ironcore-net/apimachinery/equality"
metalnetletclient "github.com/ironcore-dev/ironcore-net/metalnetlet/client"
metalnetlethandler "github.com/ironcore-dev/ironcore-net/metalnetlet/handler"
"github.com/ironcore-dev/ironcore-net/networkid"
Expand Down Expand Up @@ -116,7 +116,7 @@ func (r *NetworkReconciler) delete(ctx context.Context, log logr.Logger, network
func (r *NetworkReconciler) updateApinetNetworkStatus(ctx context.Context, log logr.Logger, network *apinetv1alpha1.Network, metalnetNetwork *metalnetv1alpha1.Network) error {
newStatusPeerings := metalnetNetworkPeeringsStatusToNetworkPeeringsStatus(metalnetNetwork.Status.Peerings)
log.V(1).Info("apinet status", "old", network.Status.Peerings, "new", newStatusPeerings)
if !slices.Equal(network.Status.Peerings, newStatusPeerings) {
if !equality.Semantic.DeepEqual(network.Status.Peerings, newStatusPeerings) {
log.V(1).Info("Patching apinet network status", "status", newStatusPeerings)
networkBase := network.DeepCopy()
network.Status.Peerings = newStatusPeerings
Expand Down Expand Up @@ -144,7 +144,7 @@ func (r *NetworkReconciler) reconcile(ctx context.Context, log logr.Logger, netw
}
if modified {
log.V(1).Info("Added finalizer")
return ctrl.Result{}, nil
return ctrl.Result{Requeue: true}, nil
}
log.V(1).Info("Finalizer is present")

Expand Down Expand Up @@ -195,7 +195,7 @@ func (r *NetworkReconciler) reconcile(ctx context.Context, log logr.Logger, netw
}
}
// metalnetNetwork.Spec.PeeredPrefixes = peeredPrefixes
isPeeredIDsEqual := slices.Equal(metalnetNetwork.Spec.PeeredIDs, peeredIDs)
isPeeredIDsEqual := equality.Semantic.DeepEqual(metalnetNetwork.Spec.PeeredIDs, peeredIDs)
isPeeredPrefixesEqual := reflect.DeepEqual(metalnetNetwork.Spec.PeeredPrefixes, peeredPrefixes)

log.V(1).Info("Peered IDs", "old", metalnetNetwork.Spec.PeeredIDs, "new", peeredIDs)
Expand Down

0 comments on commit b0b74d6

Please sign in to comment.