diff --git a/pkg/proxy/apis/config/fuzzer/fuzzer.go b/pkg/proxy/apis/config/fuzzer/fuzzer.go index 33b39077adc..615c79e4aa4 100644 --- a/pkg/proxy/apis/config/fuzzer/fuzzer.go +++ b/pkg/proxy/apis/config/fuzzer/fuzzer.go @@ -25,7 +25,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtimeserializer "k8s.io/apimachinery/pkg/runtime/serializer" kubeproxyconfig "k8s.io/kubernetes/pkg/proxy/apis/config" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) // Funcs returns the fuzzer functions for the kube-proxy apis. @@ -35,16 +35,16 @@ func Funcs(codecs runtimeserializer.CodecFactory) []interface{} { c.FuzzNoCustom(obj) obj.BindAddress = fmt.Sprintf("%d.%d.%d.%d", c.Intn(256), c.Intn(256), c.Intn(256), c.Intn(256)) obj.ClientConnection.ContentType = c.RandString() - obj.Conntrack.MaxPerCore = pointer.Int32(c.Int31()) - obj.Conntrack.Min = pointer.Int32(c.Int31()) + obj.Conntrack.MaxPerCore = ptr.To(c.Int31()) + obj.Conntrack.Min = ptr.To(c.Int31()) obj.Conntrack.TCPCloseWaitTimeout = &metav1.Duration{Duration: time.Duration(c.Int63()) * time.Hour} obj.Conntrack.TCPEstablishedTimeout = &metav1.Duration{Duration: time.Duration(c.Int63()) * time.Hour} obj.FeatureGates = map[string]bool{c.RandString(): true} obj.HealthzBindAddress = fmt.Sprintf("%d.%d.%d.%d:%d", c.Intn(256), c.Intn(256), c.Intn(256), c.Intn(256), c.Intn(65536)) - obj.IPTables.MasqueradeBit = pointer.Int32(c.Int31()) - obj.IPTables.LocalhostNodePorts = pointer.Bool(c.RandBool()) + obj.IPTables.MasqueradeBit = ptr.To(c.Int31()) + obj.IPTables.LocalhostNodePorts = ptr.To(c.RandBool()) obj.MetricsBindAddress = fmt.Sprintf("%d.%d.%d.%d:%d", c.Intn(256), c.Intn(256), c.Intn(256), c.Intn(256), c.Intn(65536)) - obj.OOMScoreAdj = pointer.Int32(c.Int31()) + obj.OOMScoreAdj = ptr.To(c.Int31()) obj.ClientConnection.ContentType = "bar" obj.NodePortAddresses = []string{"1.2.3.0/24"} if obj.Logging.Format == "" { diff --git a/pkg/proxy/apis/config/v1alpha1/defaults.go b/pkg/proxy/apis/config/v1alpha1/defaults.go index 06f812bbb90..e883c98111d 100644 --- a/pkg/proxy/apis/config/v1alpha1/defaults.go +++ b/pkg/proxy/apis/config/v1alpha1/defaults.go @@ -29,7 +29,7 @@ import ( "k8s.io/kubernetes/pkg/kubelet/qos" proxyutil "k8s.io/kubernetes/pkg/proxy/util" netutils "k8s.io/utils/net" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) func addDefaultingFuncs(scheme *kruntime.Scheme) error { @@ -66,17 +66,17 @@ func SetDefaults_KubeProxyConfiguration(obj *kubeproxyconfigv1alpha1.KubeProxyCo obj.IPTables.MinSyncPeriod = metav1.Duration{Duration: 1 * time.Second} } if obj.IPTables.LocalhostNodePorts == nil { - obj.IPTables.LocalhostNodePorts = pointer.Bool(true) + obj.IPTables.LocalhostNodePorts = ptr.To(true) } if obj.IPVS.SyncPeriod.Duration == 0 { obj.IPVS.SyncPeriod = metav1.Duration{Duration: 30 * time.Second} } if obj.Conntrack.MaxPerCore == nil { - obj.Conntrack.MaxPerCore = pointer.Int32(32 * 1024) + obj.Conntrack.MaxPerCore = ptr.To[int32](32 * 1024) } if obj.Conntrack.Min == nil { - obj.Conntrack.Min = pointer.Int32(128 * 1024) + obj.Conntrack.Min = ptr.To[int32](128 * 1024) } if obj.IPTables.MasqueradeBit == nil { diff --git a/pkg/proxy/apis/config/v1alpha1/defaults_test.go b/pkg/proxy/apis/config/v1alpha1/defaults_test.go index 3ea0257a94f..0ce8c815bd0 100644 --- a/pkg/proxy/apis/config/v1alpha1/defaults_test.go +++ b/pkg/proxy/apis/config/v1alpha1/defaults_test.go @@ -20,7 +20,7 @@ import ( "testing" "time" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" "github.com/google/go-cmp/cmp" @@ -53,9 +53,9 @@ func TestDefaultsKubeProxyConfiguration(t *testing.T) { Burst: 10, }, IPTables: kubeproxyconfigv1alpha1.KubeProxyIPTablesConfiguration{ - MasqueradeBit: pointer.Int32(14), + MasqueradeBit: ptr.To[int32](14), MasqueradeAll: false, - LocalhostNodePorts: pointer.Bool(true), + LocalhostNodePorts: ptr.To(true), SyncPeriod: metav1.Duration{Duration: 30 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 1 * time.Second}, }, @@ -93,9 +93,9 @@ func TestDefaultsKubeProxyConfiguration(t *testing.T) { Burst: 10, }, IPTables: kubeproxyconfigv1alpha1.KubeProxyIPTablesConfiguration{ - MasqueradeBit: pointer.Int32(14), + MasqueradeBit: ptr.To[int32](14), MasqueradeAll: false, - LocalhostNodePorts: pointer.Bool(true), + LocalhostNodePorts: ptr.To(true), SyncPeriod: metav1.Duration{Duration: 30 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 1 * time.Second}, }, diff --git a/pkg/proxy/apis/config/validation/validation_test.go b/pkg/proxy/apis/config/validation/validation_test.go index 1e22a1bd48a..d9cc7283aa9 100644 --- a/pkg/proxy/apis/config/validation/validation_test.go +++ b/pkg/proxy/apis/config/validation/validation_test.go @@ -27,7 +27,7 @@ import ( logsapi "k8s.io/component-base/logs/api/v1" kubeproxyconfig "k8s.io/kubernetes/pkg/proxy/apis/config" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) func TestValidateKubeProxyConfiguration(t *testing.T) { @@ -54,8 +54,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 5 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -74,8 +74,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -94,8 +94,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -114,8 +114,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -134,8 +134,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -154,8 +154,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -174,8 +174,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -194,8 +194,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -218,8 +218,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -256,8 +256,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -280,8 +280,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -304,8 +304,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -328,8 +328,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -352,8 +352,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -376,8 +376,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -402,8 +402,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { // not specifying valid period in IPVS mode. Mode: kubeproxyconfig.ProxyModeIPVS, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -426,8 +426,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -454,8 +454,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -482,8 +482,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -507,8 +507,8 @@ func TestValidateKubeProxyConfiguration(t *testing.T) { MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, }, Conntrack: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, }, @@ -557,7 +557,7 @@ func TestValidateKubeProxyIPTablesConfiguration(t *testing.T) { }, "valid custom MasqueradeBit": { config: kubeproxyconfig.KubeProxyIPTablesConfiguration{ - MasqueradeBit: pointer.Int32(5), + MasqueradeBit: ptr.To[int32](5), MasqueradeAll: true, SyncPeriod: metav1.Duration{Duration: 5 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, @@ -575,7 +575,7 @@ func TestValidateKubeProxyIPTablesConfiguration(t *testing.T) { }, "MinSyncPeriod must be > 0": { config: kubeproxyconfig.KubeProxyIPTablesConfiguration{ - MasqueradeBit: pointer.Int32(5), + MasqueradeBit: ptr.To[int32](5), MasqueradeAll: true, SyncPeriod: metav1.Duration{Duration: 5 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: -1 * time.Second}, @@ -584,7 +584,7 @@ func TestValidateKubeProxyIPTablesConfiguration(t *testing.T) { }, "MasqueradeBit cannot be < 0": { config: kubeproxyconfig.KubeProxyIPTablesConfiguration{ - MasqueradeBit: pointer.Int32(-10), + MasqueradeBit: ptr.To[int32](-10), MasqueradeAll: true, SyncPeriod: metav1.Duration{Duration: 5 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 2 * time.Second}, @@ -593,7 +593,7 @@ func TestValidateKubeProxyIPTablesConfiguration(t *testing.T) { }, "SyncPeriod must be >= MinSyncPeriod": { config: kubeproxyconfig.KubeProxyIPTablesConfiguration{ - MasqueradeBit: pointer.Int32(5), + MasqueradeBit: ptr.To[int32](5), MasqueradeAll: true, SyncPeriod: metav1.Duration{Duration: 1 * time.Second}, MinSyncPeriod: metav1.Duration{Duration: 5 * time.Second}, @@ -723,8 +723,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }{ "valid 5 second timeouts": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, UDPTimeout: metav1.Duration{Duration: 5 * time.Second}, @@ -734,8 +734,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "valid duration equal to 0 second timeout": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 0 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 0 * time.Second}, UDPTimeout: metav1.Duration{Duration: 0 * time.Second}, @@ -745,8 +745,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "invalid MaxPerCore < 0": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(-1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](-1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, UDPTimeout: metav1.Duration{Duration: 5 * time.Second}, @@ -756,8 +756,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "invalid minimum < 0": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(-1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](-1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, UDPTimeout: metav1.Duration{Duration: 5 * time.Second}, @@ -767,8 +767,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "invalid TCPEstablishedTimeout < 0": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: -5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, UDPTimeout: metav1.Duration{Duration: 5 * time.Second}, @@ -778,8 +778,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "invalid TCPCloseWaitTimeout < 0": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: -5 * time.Second}, UDPTimeout: metav1.Duration{Duration: 5 * time.Second}, @@ -789,8 +789,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "invalid UDPTimeout < 0": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, UDPTimeout: metav1.Duration{Duration: -5 * time.Second}, @@ -800,8 +800,8 @@ func TestValidateKubeProxyConntrackConfiguration(t *testing.T) { }, "invalid UDPStreamTimeout < 0": { config: kubeproxyconfig.KubeProxyConntrackConfiguration{ - MaxPerCore: pointer.Int32(1), - Min: pointer.Int32(1), + MaxPerCore: ptr.To[int32](1), + Min: ptr.To[int32](1), TCPEstablishedTimeout: &metav1.Duration{Duration: 5 * time.Second}, TCPCloseWaitTimeout: &metav1.Duration{Duration: 5 * time.Second}, UDPTimeout: metav1.Duration{Duration: 5 * time.Second}, diff --git a/pkg/proxy/config/api_test.go b/pkg/proxy/config/api_test.go index 422f4f03f16..d5aea4cbf71 100644 --- a/pkg/proxy/config/api_test.go +++ b/pkg/proxy/config/api_test.go @@ -30,7 +30,7 @@ import ( "k8s.io/client-go/informers" "k8s.io/client-go/kubernetes/fake" ktesting "k8s.io/client-go/testing" - utilpointer "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) func TestNewServicesSourceApi_UpdatesAndMultipleServices(t *testing.T) { @@ -83,7 +83,6 @@ func TestNewServicesSourceApi_UpdatesAndMultipleServices(t *testing.T) { } func TestNewEndpointsSourceApi_UpdatesAndMultipleEndpoints(t *testing.T) { - tcp := v1.ProtocolTCP endpoints1v1 := &discoveryv1.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{Namespace: "testnamespace", Name: "e1"}, AddressType: discoveryv1.AddressTypeIPv4, @@ -93,8 +92,8 @@ func TestNewEndpointsSourceApi_UpdatesAndMultipleEndpoints(t *testing.T) { }, }}, Ports: []discoveryv1.EndpointPort{{ - Port: utilpointer.Int32(8080), - Protocol: &tcp, + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }}, } endpoints1v2 := &discoveryv1.EndpointSlice{ @@ -107,8 +106,8 @@ func TestNewEndpointsSourceApi_UpdatesAndMultipleEndpoints(t *testing.T) { }, }}, Ports: []discoveryv1.EndpointPort{{ - Port: utilpointer.Int32(8080), - Protocol: &tcp, + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }}, } endpoints2 := &discoveryv1.EndpointSlice{ @@ -120,8 +119,8 @@ func TestNewEndpointsSourceApi_UpdatesAndMultipleEndpoints(t *testing.T) { }, }}, Ports: []discoveryv1.EndpointPort{{ - Port: utilpointer.Int32(8080), - Protocol: &tcp, + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }}, } diff --git a/pkg/proxy/config/config_test.go b/pkg/proxy/config/config_test.go index 0d91cbd8152..3f8c4225c16 100644 --- a/pkg/proxy/config/config_test.go +++ b/pkg/proxy/config/config_test.go @@ -32,7 +32,7 @@ import ( informers "k8s.io/client-go/informers" "k8s.io/client-go/kubernetes/fake" ktesting "k8s.io/client-go/testing" - utilpointer "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) type sortedServices []*v1.Service @@ -345,7 +345,7 @@ func TestNewEndpointsMultipleHandlersAddedAndNotified(t *testing.T) { }, { Addresses: []string{"2.2.2.2"}, }}, - Ports: []discoveryv1.EndpointPort{{Port: utilpointer.Int32(80)}}, + Ports: []discoveryv1.EndpointPort{{Port: ptr.To[int32](80)}}, } endpoints2 := &discoveryv1.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{Namespace: "testnamespace", Name: "bar"}, @@ -355,7 +355,7 @@ func TestNewEndpointsMultipleHandlersAddedAndNotified(t *testing.T) { }, { Addresses: []string{"4.4.4.4"}, }}, - Ports: []discoveryv1.EndpointPort{{Port: utilpointer.Int32(80)}}, + Ports: []discoveryv1.EndpointPort{{Port: ptr.To[int32](80)}}, } fakeWatch.Add(endpoints1) fakeWatch.Add(endpoints2) @@ -391,7 +391,7 @@ func TestNewEndpointsMultipleHandlersAddRemoveSetAndNotified(t *testing.T) { }, { Addresses: []string{"2.2.2.2"}, }}, - Ports: []discoveryv1.EndpointPort{{Port: utilpointer.Int32(80)}}, + Ports: []discoveryv1.EndpointPort{{Port: ptr.To[int32](80)}}, } endpoints2 := &discoveryv1.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{Namespace: "testnamespace", Name: "bar"}, @@ -401,7 +401,7 @@ func TestNewEndpointsMultipleHandlersAddRemoveSetAndNotified(t *testing.T) { }, { Addresses: []string{"4.4.4.4"}, }}, - Ports: []discoveryv1.EndpointPort{{Port: utilpointer.Int32(80)}}, + Ports: []discoveryv1.EndpointPort{{Port: ptr.To[int32](80)}}, } fakeWatch.Add(endpoints1) fakeWatch.Add(endpoints2) @@ -419,7 +419,7 @@ func TestNewEndpointsMultipleHandlersAddRemoveSetAndNotified(t *testing.T) { }, { Addresses: []string{"6.6.6.6"}, }}, - Ports: []discoveryv1.EndpointPort{{Port: utilpointer.Int32(80)}}, + Ports: []discoveryv1.EndpointPort{{Port: ptr.To[int32](80)}}, } fakeWatch.Add(endpoints3) endpoints = []*discoveryv1.EndpointSlice{endpoints2, endpoints1, endpoints3} @@ -433,7 +433,7 @@ func TestNewEndpointsMultipleHandlersAddRemoveSetAndNotified(t *testing.T) { Endpoints: []discoveryv1.Endpoint{{ Addresses: []string{"7.7.7.7"}, }}, - Ports: []discoveryv1.EndpointPort{{Port: utilpointer.Int32(80)}}, + Ports: []discoveryv1.EndpointPort{{Port: ptr.To[int32](80)}}, } fakeWatch.Modify(endpoints1v2) endpoints = []*discoveryv1.EndpointSlice{endpoints2, endpoints1v2, endpoints3} diff --git a/pkg/proxy/endpoints_test.go b/pkg/proxy/endpoints_test.go index b429cfcee7c..686c71f3d6f 100644 --- a/pkg/proxy/endpoints_test.go +++ b/pkg/proxy/endpoints_test.go @@ -27,7 +27,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/sets" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) func (proxier *FakeProxier) addEndpointSlice(slice *discovery.EndpointSlice) { @@ -184,9 +184,6 @@ func makeTestEndpointSlice(namespace, name string, slice int, epsFunc func(*disc } func TestUpdateEndpointsMap(t *testing.T) { - var nodeName = testHostname - udp := v1.ProtocolUDP - emptyEndpoint := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{} } @@ -195,61 +192,61 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To(""), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } unnamedPortReady := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To(""), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } unnamedPortTerminating := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To(""), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } unnamedPortLocal := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To(""), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPortLocal := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPort := func(eps *discovery.EndpointSlice) { @@ -257,9 +254,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPortRenamed := func(eps *discovery.EndpointSlice) { @@ -267,9 +264,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11-2"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11-2"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPortRenumbered := func(eps *discovery.EndpointSlice) { @@ -277,9 +274,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(22), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPortsLocalNoLocal := func(eps *discovery.EndpointSlice) { @@ -287,16 +284,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }, { Addresses: []string{"1.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udp, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsets_s1 := func(eps *discovery.EndpointSlice) { @@ -304,9 +301,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsets_s2 := func(eps *discovery.EndpointSlice) { @@ -314,9 +311,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udp, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsWithLocal_s1 := func(eps *discovery.EndpointSlice) { @@ -324,35 +321,35 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsWithLocal_s2 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udp, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsMultiplePortsLocal_s1 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udp, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsMultiplePortsLocal_s2 := func(eps *discovery.EndpointSlice) { @@ -360,9 +357,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p13"), - Port: pointer.Int32(13), - Protocol: &udp, + Name: ptr.To("p13"), + Port: ptr.To[int32](13), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsIPsPorts1_s1 := func(eps *discovery.EndpointSlice) { @@ -370,16 +367,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }, { Addresses: []string{"1.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udp, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsIPsPorts1_s2 := func(eps *discovery.EndpointSlice) { @@ -387,16 +384,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.3"}, }, { Addresses: []string{"1.1.1.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p13"), - Port: pointer.Int32(13), - Protocol: &udp, + Name: ptr.To("p13"), + Port: ptr.To[int32](13), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p14"), - Port: pointer.Int32(14), - Protocol: &udp, + Name: ptr.To("p14"), + Port: ptr.To[int32](14), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsIPsPorts2 := func(eps *discovery.EndpointSlice) { @@ -404,16 +401,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"2.2.2.1"}, }, { Addresses: []string{"2.2.2.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p21"), - Port: pointer.Int32(21), - Protocol: &udp, + Name: ptr.To("p21"), + Port: ptr.To[int32](21), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p22"), - Port: pointer.Int32(22), - Protocol: &udp, + Name: ptr.To("p22"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore1 := func(eps *discovery.EndpointSlice) { @@ -421,59 +418,59 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore2_s1 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"2.2.2.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"2.2.2.22"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p22"), - Port: pointer.Int32(22), - Protocol: &udp, + Name: ptr.To("p22"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore2_s2 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"2.2.2.3"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p23"), - Port: pointer.Int32(23), - Protocol: &udp, + Name: ptr.To("p23"), + Port: ptr.To[int32](23), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore4_s1 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"4.4.4.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"4.4.4.5"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p44"), - Port: pointer.Int32(44), - Protocol: &udp, + Name: ptr.To("p44"), + Port: ptr.To[int32](44), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore4_s2 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"4.4.4.6"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p45"), - Port: pointer.Int32(45), - Protocol: &udp, + Name: ptr.To("p45"), + Port: ptr.To[int32](45), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexAfter1_s1 := func(eps *discovery.EndpointSlice) { @@ -483,9 +480,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.11"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexAfter1_s2 := func(eps *discovery.EndpointSlice) { @@ -493,13 +490,13 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udp, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p122"), - Port: pointer.Int32(122), - Protocol: &udp, + Name: ptr.To("p122"), + Port: ptr.To[int32](122), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexAfter3 := func(eps *discovery.EndpointSlice) { @@ -507,20 +504,20 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"3.3.3.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p33"), - Port: pointer.Int32(33), - Protocol: &udp, + Name: ptr.To("p33"), + Port: ptr.To[int32](33), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexAfter4 := func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"4.4.4.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p44"), - Port: pointer.Int32(44), - Protocol: &udp, + Name: ptr.To("p44"), + Port: ptr.To[int32](44), + Protocol: ptr.To(v1.ProtocolUDP), }} } @@ -1112,7 +1109,7 @@ func TestUpdateEndpointsMap(t *testing.T) { for tci, tc := range testCases { t.Run(tc.name, func(t *testing.T) { fp := newFakeProxier(v1.IPv4Protocol, time.Time{}) - fp.hostname = nodeName + fp.hostname = testHostname // First check that after adding all previous versions of endpoints, // the fp.previousEndpointsMap is as we expect. @@ -1199,7 +1196,6 @@ func TestLastChangeTriggerTime(t *testing.T) { t3 := t2.Add(time.Second) createEndpoints := func(namespace, name string, triggerTime time.Time) *discovery.EndpointSlice { - tcp := v1.ProtocolTCP return &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: name, @@ -1216,9 +1212,9 @@ func TestLastChangeTriggerTime(t *testing.T) { Addresses: []string{"1.1.1.1"}, }}, Ports: []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &tcp, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolTCP), }}, } } @@ -1335,7 +1331,7 @@ func TestLastChangeTriggerTime(t *testing.T) { } func TestEndpointSliceUpdate(t *testing.T) { - fqdnSlice := generateEndpointSlice("svc1", "ns1", 2, 5, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}) + fqdnSlice := generateEndpointSlice("svc1", "ns1", 2, 5, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}) fqdnSlice.AddressType = discovery.AddressTypeFQDN testCases := map[string]struct { @@ -1353,7 +1349,7 @@ func TestEndpointSliceUpdate(t *testing.T) { startingSlices: []*discovery.EndpointSlice{}, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1373,11 +1369,11 @@ func TestEndpointSliceUpdate(t *testing.T) { // test no modification to state - current change should be nil as nothing changes "add the same slice that already exists": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: false, expectedCurrentChange: nil, @@ -1386,7 +1382,7 @@ func TestEndpointSliceUpdate(t *testing.T) { // ensure that only valide address types are processed "add an FQDN slice (invalid address type)": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, @@ -1399,12 +1395,12 @@ func TestEndpointSliceUpdate(t *testing.T) { // test additions to existing state "add a slice that overlaps with existing state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), - generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), + generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 5, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 5, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1432,12 +1428,12 @@ func TestEndpointSliceUpdate(t *testing.T) { // test additions to existing state with partially overlapping slices and ports "add a slice that overlaps with existing state and partial ports": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), - generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), + generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSliceWithOffset("svc1", "ns1", 3, 1, 5, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80)}), + paramEndpointSlice: generateEndpointSliceWithOffset("svc1", "ns1", 3, 1, 5, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1463,12 +1459,12 @@ func TestEndpointSliceUpdate(t *testing.T) { // test deletions from existing state with partially overlapping slices and ports "remove a slice that overlaps with existing state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), - generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), + generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 5, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 5, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: true, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1486,12 +1482,12 @@ func TestEndpointSliceUpdate(t *testing.T) { // ensure a removal that has no effect turns into a no-op "remove a slice that doesn't even exist in current state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 5, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), - generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 5, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), + generateEndpointSlice("svc1", "ns1", 2, 2, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 3, 5, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 3, 5, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: true, expectedReturnVal: false, expectedCurrentChange: nil, @@ -1500,11 +1496,11 @@ func TestEndpointSliceUpdate(t *testing.T) { // start with all endpoints ready, transition to no endpoints ready "transition all endpoints to unready state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 1, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 1, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1524,11 +1520,11 @@ func TestEndpointSliceUpdate(t *testing.T) { // start with no endpoints ready, transition to all endpoints ready "transition all endpoints to ready state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 2, 1, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 2, 1, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 2, 999, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 2, 999, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1546,12 +1542,12 @@ func TestEndpointSliceUpdate(t *testing.T) { // start with some endpoints ready, transition to more endpoints ready "transition some endpoints to ready state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 2, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), - generateEndpointSlice("svc1", "ns1", 2, 2, 2, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 2, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), + generateEndpointSlice("svc1", "ns1", 2, 2, 2, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 3, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 3, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1575,12 +1571,12 @@ func TestEndpointSliceUpdate(t *testing.T) { // start with some endpoints ready, transition to some terminating "transition some endpoints to terminating state": { startingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 2, 2, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), - generateEndpointSlice("svc1", "ns1", 2, 2, 2, 2, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 2, 2, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), + generateEndpointSlice("svc1", "ns1", 2, 2, 2, 2, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, endpointsChangeTracker: NewEndpointsChangeTracker("host1", nil, v1.IPv4Protocol, nil, nil), namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, - paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 3, 2, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + paramEndpointSlice: generateEndpointSlice("svc1", "ns1", 1, 3, 3, 2, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), paramRemoveSlice: false, expectedReturnVal: true, expectedCurrentChange: map[ServicePortName][]*BaseEndpointInfo{ @@ -1663,7 +1659,7 @@ func TestCheckoutChanges(t *testing.T) { }}, appliedSlices: []*discovery.EndpointSlice{}, pendingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 3, 2, []string{"host1"}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 3, 2, []string{"host1"}, []*int32{ptr.To[int32](80)}), }, }, "removing port in update": { @@ -1690,10 +1686,10 @@ func TestCheckoutChanges(t *testing.T) { }, }}, appliedSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 3, 999, []string{"host1"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 3, 999, []string{"host1"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, pendingSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 3, 999, []string{"host1"}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 3, 999, []string{"host1"}, []*int32{ptr.To[int32](80)}), }, }, } diff --git a/pkg/proxy/endpointslicecache_test.go b/pkg/proxy/endpointslicecache_test.go index 6d2d4a58756..30129c6b075 100644 --- a/pkg/proxy/endpointslicecache_test.go +++ b/pkg/proxy/endpointslicecache_test.go @@ -26,7 +26,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/types" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) func TestEndpointsMapFromESC(t *testing.T) { @@ -40,7 +40,7 @@ func TestEndpointsMapFromESC(t *testing.T) { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, hostname: "host1", endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80), pointer.Int32(443)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80), ptr.To[int32](443)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -58,8 +58,8 @@ func TestEndpointsMapFromESC(t *testing.T) { "2 slices, same port": { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc1", "ns1", 2, 3, 999, 999, []string{}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc1", "ns1", 2, 3, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -77,8 +77,8 @@ func TestEndpointsMapFromESC(t *testing.T) { "2 overlapping slices, same port": { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc1", "ns1", 1, 4, 999, 999, []string{}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc1", "ns1", 1, 4, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -96,8 +96,8 @@ func TestEndpointsMapFromESC(t *testing.T) { "2 slices, overlapping endpoints, some endpoints unready in 1 or both": { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 10, 3, 999, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc1", "ns1", 1, 10, 6, 999, []string{}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 10, 3, 999, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc1", "ns1", 1, 10, 6, 999, []string{}, []*int32{ptr.To[int32](80)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -118,8 +118,8 @@ func TestEndpointsMapFromESC(t *testing.T) { "2 slices, overlapping endpoints, some endpoints unready and some endpoints terminating": { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 10, 3, 5, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc1", "ns1", 1, 10, 6, 5, []string{}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 10, 3, 5, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc1", "ns1", 1, 10, 6, 5, []string{}, []*int32{ptr.To[int32](80)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -139,8 +139,8 @@ func TestEndpointsMapFromESC(t *testing.T) { "2 slices, overlapping endpoints, all unready": { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 10, 1, 999, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc1", "ns1", 1, 10, 1, 999, []string{}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 10, 1, 999, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc1", "ns1", 1, 10, 1, 999, []string{}, []*int32{ptr.To[int32](80)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -160,9 +160,9 @@ func TestEndpointsMapFromESC(t *testing.T) { "3 slices with different services and namespaces": { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc2", "ns1", 2, 3, 999, 999, []string{}, []*int32{pointer.Int32(80)}), - generateEndpointSlice("svc1", "ns2", 3, 3, 999, 999, []string{}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc2", "ns1", 2, 3, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), + generateEndpointSlice("svc1", "ns2", 3, 3, 999, 999, []string{}, []*int32{ptr.To[int32](80)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -188,8 +188,8 @@ func TestEndpointsMapFromESC(t *testing.T) { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, hostname: "host1", endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSliceWithOffset("svc1", "ns1", 1, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80)}), - generateEndpointSliceWithOffset("svc1", "ns1", 2, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(8080)}), + generateEndpointSliceWithOffset("svc1", "ns1", 1, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80)}), + generateEndpointSliceWithOffset("svc1", "ns1", 2, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](8080)}), }, expectedMap: map[ServicePortName][]*BaseEndpointInfo{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -228,7 +228,7 @@ func TestEndpointInfoByServicePort(t *testing.T) { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, hostname: "host1", endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80)}), + generateEndpointSlice("svc1", "ns1", 1, 3, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80)}), }, expectedMap: spToEndpointMap{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -260,8 +260,8 @@ func TestEndpointInfoByServicePort(t *testing.T) { namespacedName: types.NamespacedName{Name: "svc1", Namespace: "ns1"}, hostname: "host1", endpointSlices: []*discovery.EndpointSlice{ - generateEndpointSliceWithOffset("svc1", "ns1", 1, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(80)}), - generateEndpointSliceWithOffset("svc1", "ns1", 2, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{pointer.Int32(8080)}), + generateEndpointSliceWithOffset("svc1", "ns1", 1, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](80)}), + generateEndpointSliceWithOffset("svc1", "ns1", 2, 1, 2, 999, 999, []string{"host1", "host2"}, []*int32{ptr.To[int32](8080)}), }, expectedMap: spToEndpointMap{ makeServicePortName("ns1", "svc1", "port-0", v1.ProtocolTCP): { @@ -317,9 +317,8 @@ func TestEndpointInfoByServicePort(t *testing.T) { func TestEsInfoChanged(t *testing.T) { p80 := int32(80) p443 := int32(443) - tcpProto := v1.ProtocolTCP - port80 := discovery.EndpointPort{Port: &p80, Name: pointer.String("http"), Protocol: &tcpProto} - port443 := discovery.EndpointPort{Port: &p443, Name: pointer.String("https"), Protocol: &tcpProto} + port80 := discovery.EndpointPort{Port: &p80, Name: ptr.To("http"), Protocol: ptr.To(v1.ProtocolTCP)} + port443 := discovery.EndpointPort{Port: &p443, Name: ptr.To("https"), Protocol: ptr.To(v1.ProtocolTCP)} endpoint1 := discovery.Endpoint{Addresses: []string{"10.0.1.0"}} endpoint2 := discovery.Endpoint{Addresses: []string{"10.0.1.1"}} @@ -454,8 +453,6 @@ func TestEsInfoChanged(t *testing.T) { } func generateEndpointSliceWithOffset(serviceName, namespace string, sliceNum, offset, numEndpoints, unreadyMod int, terminatingMod int, hosts []string, portNums []*int32) *discovery.EndpointSlice { - tcpProtocol := v1.ProtocolTCP - endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-%d", serviceName, sliceNum), @@ -469,9 +466,9 @@ func generateEndpointSliceWithOffset(serviceName, namespace string, sliceNum, of for i, portNum := range portNums { endpointSlice.Ports = append(endpointSlice.Ports, discovery.EndpointPort{ - Name: pointer.String(fmt.Sprintf("port-%d", i)), + Name: ptr.To(fmt.Sprintf("port-%d", i)), Port: portNum, - Protocol: &tcpProtocol, + Protocol: ptr.To(v1.ProtocolTCP), }) } @@ -479,9 +476,9 @@ func generateEndpointSliceWithOffset(serviceName, namespace string, sliceNum, of readyCondition := i%unreadyMod != 0 terminatingCondition := i%terminatingMod == 0 - ready := pointer.Bool(readyCondition && !terminatingCondition) - serving := pointer.Bool(readyCondition) - terminating := pointer.Bool(terminatingCondition) + ready := ptr.To(readyCondition && !terminatingCondition) + serving := ptr.To(readyCondition) + terminating := ptr.To(terminatingCondition) endpoint := discovery.Endpoint{ Addresses: []string{fmt.Sprintf("10.0.%d.%d", offset, i)}, diff --git a/pkg/proxy/iptables/number_generated_rules_test.go b/pkg/proxy/iptables/number_generated_rules_test.go index 4d75bdee878..e160d5407f1 100644 --- a/pkg/proxy/iptables/number_generated_rules_test.go +++ b/pkg/proxy/iptables/number_generated_rules_test.go @@ -27,7 +27,7 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" iptablestest "k8s.io/kubernetes/pkg/util/iptables/testing" netutils "k8s.io/utils/net" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) // kube-proxy generates iptables rules to forward traffic from Services to Endpoints @@ -361,8 +361,6 @@ func generateServiceEndpoints(nServices, nEndpoints int, epsFunc func(eps *disco baseEp := netutils.BigForIP(netutils.ParseIPSloppy("172.16.0.1")) epPort := 8080 - tcpProtocol := v1.ProtocolTCP - eps := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: "ep", @@ -371,9 +369,9 @@ func generateServiceEndpoints(nServices, nEndpoints int, epsFunc func(eps *disco AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{}, Ports: []discovery.EndpointPort{{ - Name: pointer.String(fmt.Sprintf("%d", epPort)), - Port: pointer.Int32(int32(epPort)), - Protocol: &tcpProtocol, + Name: ptr.To(fmt.Sprintf("%d", epPort)), + Port: ptr.To(int32(epPort)), + Protocol: ptr.To(v1.ProtocolTCP), }}, } diff --git a/pkg/proxy/iptables/proxier_test.go b/pkg/proxy/iptables/proxier_test.go index 435471abf3c..ccc52091d2c 100644 --- a/pkg/proxy/iptables/proxier_test.go +++ b/pkg/proxy/iptables/proxier_test.go @@ -57,15 +57,9 @@ import ( "k8s.io/utils/exec" fakeexec "k8s.io/utils/exec/testing" netutils "k8s.io/utils/net" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) -// (Note that we don't use UDP ports in most of the tests here, because if you create UDP -// services you have to deal with setting up the FakeExec correctly for the conntrack -// cleanup calls.) -var tcpProtocol = v1.ProtocolTCP -var sctpProtocol = v1.ProtocolSCTP - func TestDeleteEndpointConnections(t *testing.T) { const ( UDP = v1.ProtocolUDP @@ -219,9 +213,9 @@ func TestDeleteEndpointConnections(t *testing.T) { Addresses: []string{endpointIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tc.protocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(tc.protocol), }} }) @@ -1827,10 +1821,11 @@ func TestOverallIPTablesRules(t *testing.T) { // in a crash, for backward compatibility. svc.Spec.LoadBalancerSourceRanges = []string{" 203.0.113.0/25"} - svcSessionAffinityTimeout := int32(10800) svc.Spec.SessionAffinity = v1.ServiceAffinityClientIP svc.Spec.SessionAffinityConfig = &v1.SessionAffinityConfig{ - ClientIP: &v1.ClientIPConfig{TimeoutSeconds: &svcSessionAffinityTimeout}, + ClientIP: &v1.ClientIPConfig{ + TimeoutSeconds: ptr.To[int32](10800), + }, } }), // create ClusterIP service with no endpoints @@ -1853,9 +1848,9 @@ func TestOverallIPTablesRules(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), // create Local LoadBalancer endpoints. Note that since we aren't setting @@ -1866,9 +1861,9 @@ func TestOverallIPTablesRules(t *testing.T) { Addresses: []string{"10.180.0.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), // create NodePort service endpoints @@ -1878,9 +1873,9 @@ func TestOverallIPTablesRules(t *testing.T) { Addresses: []string{"10.180.0.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), // create ExternalIP service endpoints @@ -1890,12 +1885,12 @@ func TestOverallIPTablesRules(t *testing.T) { Addresses: []string{"10.180.0.4"}, }, { Addresses: []string{"10.180.0.5"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), // create Cluster LoadBalancer endpoints @@ -1905,9 +1900,9 @@ func TestOverallIPTablesRules(t *testing.T) { Addresses: []string{"10.180.0.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2152,12 +2147,12 @@ func TestClusterIPGeneral(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.180.0.1"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("http"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("http"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns2", "svc2", 1, func(eps *discovery.EndpointSlice) { @@ -2165,33 +2160,33 @@ func TestClusterIPGeneral(t *testing.T) { eps.Endpoints = []discovery.Endpoint{ { Addresses: []string{"10.180.0.1"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.180.2.1"}, - NodeName: pointer.String("host2"), + NodeName: ptr.To("host2"), }, } eps.Ports = []discovery.EndpointPort{ { - Name: pointer.String("http"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("http"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }, { - Name: pointer.String("https"), - Port: pointer.Int32(8443), - Protocol: &tcpProtocol, + Name: ptr.To("https"), + Port: ptr.To[int32](8443), + Protocol: ptr.To(v1.ProtocolTCP), }, { - Name: pointer.String("dns-sctp"), - Port: pointer.Int32(53), - Protocol: &sctpProtocol, + Name: ptr.To("dns-sctp"), + Port: ptr.To[int32](53), + Protocol: ptr.To(v1.ProtocolSCTP), }, { - Name: pointer.String("dns-tcp"), - Port: pointer.Int32(5353), - Protocol: &tcpProtocol, + Name: ptr.To("dns-tcp"), + Port: ptr.To[int32](5353), + Protocol: ptr.To(v1.ProtocolTCP), }, } }), @@ -2313,9 +2308,9 @@ func TestLoadBalancer(t *testing.T) { Addresses: []string{epIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2567,12 +2562,12 @@ func TestNodePorts(t *testing.T) { NodeName: nil, }, { Addresses: []string{epIP2}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2832,12 +2827,12 @@ func TestExternalTrafficPolicyLocal(t *testing.T) { Addresses: []string{epIP1}, }, { Addresses: []string{epIP2}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2949,12 +2944,12 @@ func TestExternalTrafficPolicyCluster(t *testing.T) { NodeName: nil, }, { Addresses: []string{epIP2}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -3396,9 +3391,6 @@ func checkEndpointExpectations(t *testing.T, tci int, newMap proxy.EndpointsMap, } func TestUpdateEndpointsMap(t *testing.T) { - var nodeName = testHostname - udpProtocol := v1.ProtocolUDP - emptyEndpointSlices := []*discovery.EndpointSlice{ makeTestEndpointSlice("ns1", "ep1", 1, func(*discovery.EndpointSlice) {}), } @@ -3408,9 +3400,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } subset2 := func(eps *discovery.EndpointSlice) { @@ -3419,9 +3411,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPortLocal := []*discovery.EndpointSlice{ @@ -3430,12 +3422,12 @@ func TestUpdateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -3450,9 +3442,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11-2"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11-2"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -3464,9 +3456,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(22), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -3478,16 +3470,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.1"}, }, { Addresses: []string{"10.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -3499,12 +3491,12 @@ func TestUpdateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsWithLocal := []*discovery.EndpointSlice{ @@ -3515,16 +3507,16 @@ func TestUpdateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } subset3 := func(eps *discovery.EndpointSlice) { @@ -3533,9 +3525,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p13"), - Port: pointer.Int32(13), - Protocol: &udpProtocol, + Name: ptr.To("p13"), + Port: ptr.To[int32](13), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsMultiplePortsLocal := []*discovery.EndpointSlice{ @@ -3548,16 +3540,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.1"}, }, { Addresses: []string{"10.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } subsetMultipleIPsPorts2 := func(eps *discovery.EndpointSlice) { @@ -3566,16 +3558,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.3"}, }, { Addresses: []string{"10.1.1.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p13"), - Port: pointer.Int32(13), - Protocol: &udpProtocol, + Name: ptr.To("p13"), + Port: ptr.To[int32](13), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p14"), - Port: pointer.Int32(14), - Protocol: &udpProtocol, + Name: ptr.To("p14"), + Port: ptr.To[int32](14), + Protocol: ptr.To(v1.ProtocolUDP), }} } subsetMultipleIPsPorts3 := func(eps *discovery.EndpointSlice) { @@ -3584,16 +3576,16 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.2.2.1"}, }, { Addresses: []string{"10.2.2.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p21"), - Port: pointer.Int32(21), - Protocol: &udpProtocol, + Name: ptr.To("p21"), + Port: ptr.To[int32](21), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p22"), - Port: pointer.Int32(22), - Protocol: &udpProtocol, + Name: ptr.To("p22"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsIPsPorts := []*discovery.EndpointSlice{ @@ -3605,54 +3597,54 @@ func TestUpdateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.2.2.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.2.2.22"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p22"), - Port: pointer.Int32(22), - Protocol: &udpProtocol, + Name: ptr.To("p22"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset2 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.2.2.3"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p23"), - Port: pointer.Int32(23), - Protocol: &udpProtocol, + Name: ptr.To("p23"), + Port: ptr.To[int32](23), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset3 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.4.4.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.4.4.5"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p44"), - Port: pointer.Int32(44), - Protocol: &udpProtocol, + Name: ptr.To("p44"), + Port: ptr.To[int32](44), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset4 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.4.4.6"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p45"), - Port: pointer.Int32(45), - Protocol: &udpProtocol, + Name: ptr.To("p45"), + Port: ptr.To[int32](45), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset5 := func(eps *discovery.EndpointSlice) { @@ -3663,9 +3655,9 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.11"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset6 := func(eps *discovery.EndpointSlice) { @@ -3674,13 +3666,13 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.1.1.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p122"), - Port: pointer.Int32(122), - Protocol: &udpProtocol, + Name: ptr.To("p122"), + Port: ptr.To[int32](122), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset7 := func(eps *discovery.EndpointSlice) { @@ -3689,21 +3681,21 @@ func TestUpdateEndpointsMap(t *testing.T) { Addresses: []string{"10.3.3.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p33"), - Port: pointer.Int32(33), - Protocol: &udpProtocol, + Name: ptr.To("p33"), + Port: ptr.To[int32](33), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset8 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.4.4.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p44"), - Port: pointer.Int32(44), - Protocol: &udpProtocol, + Name: ptr.To("p44"), + Port: ptr.To[int32](44), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore := []*discovery.EndpointSlice{ @@ -4160,7 +4152,7 @@ func TestUpdateEndpointsMap(t *testing.T) { t.Run(tc.name, func(t *testing.T) { ipt := iptablestest.NewFake() fp := NewFakeProxier(ipt) - fp.hostname = nodeName + fp.hostname = testHostname // First check that after adding all previous versions of endpoints, // the fp.oldEndpoints is as we expect. @@ -4254,27 +4246,27 @@ func TestHealthCheckNodePortWhenTerminating(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{{ Addresses: []string{"10.0.1.1"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(testHostname), }, { // not ready endpoints should be ignored Addresses: []string{"10.0.1.4"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(false)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(false)}, + NodeName: ptr.To(testHostname), }}, } @@ -4293,43 +4285,43 @@ func TestHealthCheckNodePortWhenTerminating(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{{ Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // not ready endpoints should be ignored Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }}, } @@ -4403,20 +4395,19 @@ func TestProxierDeleteNodePortStaleUDP(t *testing.T) { } epIP := "10.180.0.1" - udpProtocol := v1.ProtocolUDP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{epIP}, Conditions: discovery.EndpointConditions{ - Serving: pointer.Bool(false), + Serving: ptr.To(false), }, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &udpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolUDP), }} }), ) @@ -4433,13 +4424,13 @@ func TestProxierDeleteNodePortStaleUDP(t *testing.T) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{epIP}, Conditions: discovery.EndpointConditions{ - Serving: pointer.Bool(true), + Serving: ptr.To(true), }, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &udpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolUDP), }} }), ) @@ -4527,9 +4518,9 @@ func TestProxierMetricsIptablesTotalRules(t *testing.T) { Addresses: []string{"10.0.0.5"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -4562,9 +4553,6 @@ func TestInternalTrafficPolicy(t *testing.T) { hostname string } - cluster := v1.ServiceInternalTrafficPolicyCluster - local := v1.ServiceInternalTrafficPolicyLocal - testCases := []struct { name string line int @@ -4575,7 +4563,7 @@ func TestInternalTrafficPolicy(t *testing.T) { { name: "internalTrafficPolicy is cluster", line: getLine(), - internalTrafficPolicy: &cluster, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -4595,7 +4583,7 @@ func TestInternalTrafficPolicy(t *testing.T) { { name: "internalTrafficPolicy is local and there is one local endpoint", line: getLine(), - internalTrafficPolicy: &local, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -4615,7 +4603,7 @@ func TestInternalTrafficPolicy(t *testing.T) { { name: "internalTrafficPolicy is local and there are multiple local endpoints", line: getLine(), - internalTrafficPolicy: &local, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", testHostname}, @@ -4635,7 +4623,7 @@ func TestInternalTrafficPolicy(t *testing.T) { { name: "internalTrafficPolicy is local and there are no local endpoints", line: getLine(), - internalTrafficPolicy: &local, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -4684,17 +4672,17 @@ func TestInternalTrafficPolicy(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, } for _, ep := range tc.endpoints { endpointSlice.Endpoints = append(endpointSlice.Endpoints, discovery.Endpoint{ Addresses: []string{ep.ip}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(ep.hostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(ep.hostname), }) } @@ -4761,59 +4749,59 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be ignored for external since there are ready non-terminating endpoints Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be ignored for external since there are ready non-terminating endpoints Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be ignored for external since it's not local Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String("host-1"), + NodeName: ptr.To("host-1"), }, }, }, @@ -4846,9 +4834,9 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ @@ -4856,41 +4844,41 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { // this endpoint should be used since there are only ready terminating endpoints Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be used since there are only ready terminating endpoints Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should not be used since it is both terminating and not ready. Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be ignored for external since it's not local Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String("host-1"), + NodeName: ptr.To("host-1"), }, }, }, @@ -4923,9 +4911,9 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ @@ -4934,11 +4922,11 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { // but it will prevent a REJECT rule from being created Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String("host-1"), + NodeName: ptr.To("host-1"), }, }, }, @@ -4969,9 +4957,9 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ @@ -4979,21 +4967,21 @@ func TestTerminatingEndpointsTrafficPolicyLocal(t *testing.T) { // Local but not ready or serving Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // Remote and not ready or serving Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String("host-1"), + NodeName: ptr.To("host-1"), }, }, }, @@ -5095,58 +5083,58 @@ func TestTerminatingEndpointsTrafficPolicyCluster(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be ignored since there are ready non-terminating endpoints Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, { // this endpoint should be ignored since it is not "serving" Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, { Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, }, }, @@ -5179,9 +5167,9 @@ func TestTerminatingEndpointsTrafficPolicyCluster(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ @@ -5189,41 +5177,41 @@ func TestTerminatingEndpointsTrafficPolicyCluster(t *testing.T) { // this endpoint should be used since there are only ready terminating endpoints Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should be used since there are only ready terminating endpoints Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // this endpoint should not be used since it is both terminating and not ready. Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, { // this endpoint should be used since there are only ready terminating endpoints Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, }, }, @@ -5256,20 +5244,20 @@ func TestTerminatingEndpointsTrafficPolicyCluster(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String("host-1"), + NodeName: ptr.To("host-1"), }, }, }, @@ -5302,9 +5290,9 @@ func TestTerminatingEndpointsTrafficPolicyCluster(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: "svc1"}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ @@ -5312,21 +5300,21 @@ func TestTerminatingEndpointsTrafficPolicyCluster(t *testing.T) { // Local, not ready or serving Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // Remote, not ready or serving Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String("host-1"), + NodeName: ptr.To("host-1"), }, }, }, @@ -5389,8 +5377,6 @@ func TestInternalExternalMasquerade(t *testing.T) { // (Put the test setup code in an internal function so we can have it here at the // top, before the test cases that will be run against it.) setupTest := func(fp *Proxier) { - local := v1.ServiceInternalTrafficPolicyLocal - makeServiceMap(fp, makeTestService("ns1", "svc1", func(svc *v1.Service) { svc.Spec.Type = "LoadBalancer" @@ -5431,7 +5417,7 @@ func TestInternalExternalMasquerade(t *testing.T) { NodePort: int32(3003), }} svc.Spec.HealthCheckNodePort = 30003 - svc.Spec.InternalTrafficPolicy = &local + svc.Spec.InternalTrafficPolicy = ptr.To(v1.ServiceInternalTrafficPolicyLocal) svc.Status.LoadBalancer.Ingress = []v1.LoadBalancerIngress{{ IP: "9.10.11.12", }} @@ -5444,17 +5430,17 @@ func TestInternalExternalMasquerade(t *testing.T) { eps.Endpoints = []discovery.Endpoint{ { Addresses: []string{"10.180.0.1"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.180.1.1"}, - NodeName: pointer.String("remote"), + NodeName: ptr.To("remote"), }, } eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns2", "svc2", 1, func(eps *discovery.EndpointSlice) { @@ -5462,17 +5448,17 @@ func TestInternalExternalMasquerade(t *testing.T) { eps.Endpoints = []discovery.Endpoint{ { Addresses: []string{"10.180.0.2"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.180.1.2"}, - NodeName: pointer.String("remote"), + NodeName: ptr.To("remote"), }, } eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns3", "svc3", 1, func(eps *discovery.EndpointSlice) { @@ -5480,17 +5466,17 @@ func TestInternalExternalMasquerade(t *testing.T) { eps.Endpoints = []discovery.Endpoint{ { Addresses: []string{"10.180.0.3"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.180.1.3"}, - NodeName: pointer.String("remote"), + NodeName: ptr.To("remote"), }, } eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -5843,31 +5829,31 @@ func TestInternalExternalMasquerade(t *testing.T) { // ClusterIP is assumed to be from a pod, and thus to not // require masquerading. "node to ClusterIP": { - masq: pointer.Bool(false), + masq: ptr.To(false), }, "node to ClusterIP with eTP:Local": { - masq: pointer.Bool(false), + masq: ptr.To(false), }, "node to ClusterIP with iTP:Local": { - masq: pointer.Bool(false), + masq: ptr.To(false), }, "external to ClusterIP": { - masq: pointer.Bool(false), + masq: ptr.To(false), }, "external to ClusterIP with eTP:Local": { - masq: pointer.Bool(false), + masq: ptr.To(false), }, "external to ClusterIP with iTP:Local": { - masq: pointer.Bool(false), + masq: ptr.To(false), }, // And there's no eTP:Local short-circuit for pod traffic, // so pods get only the local endpoints. "pod to NodePort with eTP:Local": { - output: pointer.String("10.180.0.2:80"), + output: ptr.To("10.180.0.2:80"), }, "pod to LB with eTP:Local": { - output: pointer.String("10.180.0.2:80"), + output: ptr.To("10.180.0.2:80"), }, }, }, @@ -5880,13 +5866,13 @@ func TestInternalExternalMasquerade(t *testing.T) { // All "to ClusterIP" traffic gets masqueraded when using // --masquerade-all. "pod to ClusterIP": { - masq: pointer.Bool(true), + masq: ptr.To(true), }, "pod to ClusterIP with eTP:Local": { - masq: pointer.Bool(true), + masq: ptr.To(true), }, "pod to ClusterIP with iTP:Local": { - masq: pointer.Bool(true), + masq: ptr.To(true), }, }, }, @@ -5898,21 +5884,21 @@ func TestInternalExternalMasquerade(t *testing.T) { overrides: map[string]packetFlowTestOverride{ // As in "masqueradeAll" "pod to ClusterIP": { - masq: pointer.Bool(true), + masq: ptr.To(true), }, "pod to ClusterIP with eTP:Local": { - masq: pointer.Bool(true), + masq: ptr.To(true), }, "pod to ClusterIP with iTP:Local": { - masq: pointer.Bool(true), + masq: ptr.To(true), }, // As in "no LocalTrafficDetector" "pod to NodePort with eTP:Local": { - output: pointer.String("10.180.0.2:80"), + output: ptr.To("10.180.0.2:80"), }, "pod to LB with eTP:Local": { - output: pointer.String("10.180.0.2:80"), + output: ptr.To("10.180.0.2:80"), }, }, }, @@ -6018,9 +6004,9 @@ func TestSyncProxyRulesLargeClusterMode(t *testing.T) { eps.Endpoints[i].Addresses = []string{fmt.Sprintf("10.0.%d.%d", i%256, i/256)} } eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns2", "svc2", 1, func(eps *discovery.EndpointSlice) { @@ -6030,9 +6016,9 @@ func TestSyncProxyRulesLargeClusterMode(t *testing.T) { eps.Endpoints[i].Addresses = []string{fmt.Sprintf("10.1.%d.%d", i%256, i/256)} } eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p8080"), - Port: pointer.Int32(8080), - Protocol: &tcpProtocol, + Name: ptr.To("p8080"), + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -6059,9 +6045,9 @@ func TestSyncProxyRulesLargeClusterMode(t *testing.T) { Addresses: []string{"203.0.113.12"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p8081"), - Port: pointer.Int32(8081), - Protocol: &tcpProtocol, + Name: ptr.To("p8081"), + Port: ptr.To[int32](8081), + Protocol: ptr.To(v1.ProtocolTCP), }} })) fp.syncProxyRules() @@ -6111,9 +6097,9 @@ func TestSyncProxyRulesLargeClusterMode(t *testing.T) { Addresses: []string{"10.4.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p8082"), - Port: pointer.Int32(8082), - Protocol: &tcpProtocol, + Name: ptr.To("p8082"), + Port: ptr.To[int32](8082), + Protocol: ptr.To(v1.ProtocolTCP), }} })) fp.syncProxyRules() @@ -6197,9 +6183,9 @@ func TestSyncProxyRulesRepeated(t *testing.T) { Addresses: []string{"10.0.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns2", "svc2", 1, func(eps *discovery.EndpointSlice) { @@ -6208,9 +6194,9 @@ func TestSyncProxyRulesRepeated(t *testing.T) { Addresses: []string{"10.0.2.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p8080"), - Port: pointer.Int32(8080), - Protocol: &tcpProtocol, + Name: ptr.To("p8080"), + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -6292,9 +6278,9 @@ func TestSyncProxyRulesRepeated(t *testing.T) { Addresses: []string{"10.0.3.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -6467,9 +6453,9 @@ func TestSyncProxyRulesRepeated(t *testing.T) { Addresses: []string{"10.0.4.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -6806,9 +6792,6 @@ func TestNoEndpointsMetric(t *testing.T) { hostname string } - internalTrafficPolicyLocal := v1.ServiceInternalTrafficPolicyLocal - externalTrafficPolicyLocal := v1.ServiceExternalTrafficPolicyLocal - metrics.RegisterMetrics() testCases := []struct { name string @@ -6820,7 +6803,7 @@ func TestNoEndpointsMetric(t *testing.T) { }{ { name: "internalTrafficPolicy is set and there are local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -6829,7 +6812,7 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "externalTrafficPolicy is set and there are local endpoints", - externalTrafficPolicy: externalTrafficPolicyLocal, + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -6838,8 +6821,8 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "both policies are set and there are local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, - externalTrafficPolicy: externalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -6848,7 +6831,7 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "internalTrafficPolicy is set and there are no local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -6858,7 +6841,7 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "externalTrafficPolicy is set and there are no local endpoints", - externalTrafficPolicy: externalTrafficPolicyLocal, + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -6868,8 +6851,8 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "both policies are set and there are no local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, - externalTrafficPolicy: externalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -6880,8 +6863,8 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "both policies are set and there are no endpoints at all", - internalTrafficPolicy: &internalTrafficPolicyLocal, - externalTrafficPolicy: externalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{}, expectedSyncProxyRulesNoLocalEndpointsTotalInternal: 0, expectedSyncProxyRulesNoLocalEndpointsTotalExternal: 0, @@ -6923,17 +6906,17 @@ func TestNoEndpointsMetric(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, } for _, ep := range tc.endpoints { endpointSlice.Endpoints = append(endpointSlice.Endpoints, discovery.Endpoint{ Addresses: []string{ep.ip}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(ep.hostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(ep.hostname), }) } @@ -6961,9 +6944,6 @@ func TestNoEndpointsMetric(t *testing.T) { } func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { - ipModeProxy := v1.LoadBalancerIPModeProxy - ipModeVIP := v1.LoadBalancerIPModeVIP - testCases := []struct { name string ipModeEnabled bool @@ -6978,7 +6958,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: false, svcIP: "10.20.30.41", svcLBIP: "1.2.3.4", - ipMode: &ipModeProxy, + ipMode: ptr.To(v1.LoadBalancerIPModeProxy), expectedRule: true, }, { @@ -6986,7 +6966,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: false, svcIP: "10.20.30.42", svcLBIP: "1.2.3.5", - ipMode: &ipModeVIP, + ipMode: ptr.To(v1.LoadBalancerIPModeVIP), expectedRule: true, }, { @@ -7003,7 +6983,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: true, svcIP: "10.20.30.41", svcLBIP: "1.2.3.4", - ipMode: &ipModeProxy, + ipMode: ptr.To(v1.LoadBalancerIPModeProxy), expectedRule: false, }, { @@ -7011,7 +6991,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: true, svcIP: "10.20.30.42", svcLBIP: "1.2.3.5", - ipMode: &ipModeVIP, + ipMode: ptr.To(v1.LoadBalancerIPModeVIP), expectedRule: true, }, { @@ -7054,7 +7034,6 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { }), ) - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(fp, makeTestEndpointSlice("ns1", "svc1", 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 @@ -7062,9 +7041,9 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) diff --git a/pkg/proxy/ipvs/proxier_test.go b/pkg/proxy/ipvs/proxier_test.go index 03369a78665..eebd10256ea 100644 --- a/pkg/proxy/ipvs/proxier_test.go +++ b/pkg/proxy/ipvs/proxier_test.go @@ -57,7 +57,7 @@ import ( "k8s.io/utils/exec" fakeexec "k8s.io/utils/exec/testing" netutils "k8s.io/utils/net" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) const testHostname = "test-hostname" @@ -263,7 +263,6 @@ func TestCleanupLeftovers(t *testing.T) { }), ) epIP := "10.180.0.1" - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 @@ -271,9 +270,9 @@ func TestCleanupLeftovers(t *testing.T) { Addresses: []string{epIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -434,9 +433,6 @@ func TestGetNodeIPs(t *testing.T) { } func TestNodePortIPv4(t *testing.T) { - tcpProtocol := v1.ProtocolTCP - udpProtocol := v1.ProtocolUDP - sctpProtocol := v1.ProtocolSCTP tests := []struct { name string services []*v1.Service @@ -468,9 +464,9 @@ func TestNodePortIPv4(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns1", "svc1", 2, func(eps *discovery.EndpointSlice) { @@ -479,9 +475,9 @@ func TestNodePortIPv4(t *testing.T) { Addresses: []string{"1002:ab8::2:10"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), }, @@ -557,9 +553,9 @@ func TestNodePortIPv4(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &udpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolUDP), }} }), }, @@ -712,9 +708,9 @@ func TestNodePortIPv4(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &sctpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolSCTP), }} }), }, @@ -860,15 +856,15 @@ func TestNodePortIPv4(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"10.180.0.1"}, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.180.1.1"}, - NodeName: pointer.String("otherHost"), + NodeName: ptr.To("otherHost"), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &sctpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolSCTP), }} }), }, @@ -988,9 +984,6 @@ func TestNodePortIPv4(t *testing.T) { } func TestNodePortIPv6(t *testing.T) { - tcpProtocol := v1.ProtocolTCP - udpProtocol := v1.ProtocolUDP - sctpProtocol := v1.ProtocolSCTP tests := []struct { name string services []*v1.Service @@ -1022,9 +1015,9 @@ func TestNodePortIPv6(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns1", "svc1", 2, func(eps *discovery.EndpointSlice) { @@ -1033,9 +1026,9 @@ func TestNodePortIPv6(t *testing.T) { Addresses: []string{"1002:ab8::2:10"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), }, @@ -1113,9 +1106,9 @@ func TestNodePortIPv6(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &udpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolUDP), }} }), }, @@ -1206,9 +1199,9 @@ func TestNodePortIPv6(t *testing.T) { Addresses: []string{"2001::1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &sctpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolSCTP), }} }), }, @@ -1333,8 +1326,6 @@ func TestNodePortIPv6(t *testing.T) { } func Test_syncEndpoint_updateWeightsOnRestart(t *testing.T) { - tcpProtocol := v1.ProtocolTCP - ipt := iptablestest.NewFake() ipvs := ipvstest.NewFake() ipset := ipsettest.NewFake(testIPSetVersion) @@ -1354,9 +1345,9 @@ func Test_syncEndpoint_updateWeightsOnRestart(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.StringPtr("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }) @@ -1368,7 +1359,7 @@ func Test_syncEndpoint_updateWeightsOnRestart(t *testing.T) { serv := &utilipvs.VirtualServer{ Address: netutils.ParseIPSloppy("10.20.30.41"), Port: uint16(80), - Protocol: string(tcpProtocol), + Protocol: string(v1.ProtocolTCP), Scheduler: fp.ipvsScheduler, } @@ -1396,7 +1387,7 @@ func Test_syncEndpoint_updateWeightsOnRestart(t *testing.T) { Namespace: "ns1", }, Port: "80", - Protocol: tcpProtocol, + Protocol: v1.ProtocolTCP, }, true, vs) if err != nil { t.Errorf("failed to sync endpoint, err: %v", err) @@ -1415,7 +1406,6 @@ func Test_syncEndpoint_updateWeightsOnRestart(t *testing.T) { } func TestIPv4Proxier(t *testing.T) { - tcpProtocol := v1.ProtocolTCP tests := []struct { name string services []*v1.Service @@ -1449,9 +1439,9 @@ func TestIPv4Proxier(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns2", "svc2", 1, func(eps *discovery.EndpointSlice) { @@ -1460,9 +1450,9 @@ func TestIPv4Proxier(t *testing.T) { Addresses: []string{"1009:ab8::5:6"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p8080"), - Port: pointer.Int32(8080), - Protocol: &tcpProtocol, + Name: ptr.To("p8080"), + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }} }), }, @@ -1553,7 +1543,6 @@ func TestIPv4Proxier(t *testing.T) { } func TestIPv6Proxier(t *testing.T) { - tcpProtocol := v1.ProtocolTCP tests := []struct { name string services []*v1.Service @@ -1587,9 +1576,9 @@ func TestIPv6Proxier(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice("ns2", "svc2", 1, func(eps *discovery.EndpointSlice) { @@ -1598,9 +1587,9 @@ func TestIPv6Proxier(t *testing.T) { Addresses: []string{"1009:ab8::5:6"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p8080"), - Port: pointer.Int32(8080), - Protocol: &tcpProtocol, + Name: ptr.To("p8080"), + Port: ptr.To[int32](8080), + Protocol: ptr.To(v1.ProtocolTCP), }} }), }, @@ -1804,7 +1793,6 @@ func TestExternalIPs(t *testing.T) { ) epIP := "10.180.0.1" - udpProtocol := v1.ProtocolUDP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 @@ -1812,9 +1800,9 @@ func TestExternalIPs(t *testing.T) { Addresses: []string{epIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &udpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolUDP), }} }), ) @@ -1878,22 +1866,21 @@ func TestOnlyLocalExternalIPs(t *testing.T) { epIP1 := "10.180.1.1" thisHostname := testHostname otherHostname := "other-hostname" - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{epIP}, - NodeName: pointer.String(thisHostname), + NodeName: ptr.To(thisHostname), }, { Addresses: []string{epIP1}, - NodeName: pointer.String(otherHostname), + NodeName: ptr.To(otherHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -1957,7 +1944,6 @@ func TestLoadBalancer(t *testing.T) { ) epIP := "10.180.0.1" - udpProtocol := v1.ProtocolUDP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 @@ -1965,9 +1951,9 @@ func TestLoadBalancer(t *testing.T) { Addresses: []string{epIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &udpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolUDP), }} }), ) @@ -2043,24 +2029,21 @@ func TestOnlyLocalNodePorts(t *testing.T) { epIP := "10.180.0.1" epIP1 := "10.180.1.1" - thisHostname := testHostname - otherHostname := "other-hostname" - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{epIP}, - NodeName: &thisHostname, + NodeName: ptr.To(testHostname), }, { Addresses: []string{epIP1}, - NodeName: &otherHostname, + NodeName: ptr.To("other-hostname"), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2202,7 +2185,6 @@ func TestLoadBalancerSourceRanges(t *testing.T) { Port: "p80", } epIP := "10.180.0.1" - tcpProtocol := v1.ProtocolTCP makeServiceMap(fp, makeTestService(svcPortName.Namespace, svcPortName.Name, func(svc *v1.Service) { @@ -2228,9 +2210,9 @@ func TestLoadBalancerSourceRanges(t *testing.T) { Addresses: []string{epIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2334,16 +2316,15 @@ func TestAcceptIPVSTraffic(t *testing.T) { }), ) - udpProtocol := v1.ProtocolUDP populateEndpointSlices(fp, makeTestEndpointSlice("ns1", "p80", 1, func(eps *discovery.EndpointSlice) { eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{svcInfo.epIP}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &udpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolUDP), }} }), ) @@ -2398,9 +2379,6 @@ func TestOnlyLocalLoadBalancing(t *testing.T) { epIP := "10.180.0.1" epIP1 := "10.180.1.1" - thisHostname := testHostname - otherHostname := "other-hostname" - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(fp, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { @@ -2408,16 +2386,16 @@ func TestOnlyLocalLoadBalancing(t *testing.T) { eps.Endpoints = []discovery.Endpoint{ { // **local** endpoint address, should be added as RS Addresses: []string{epIP}, - NodeName: &thisHostname, + NodeName: ptr.To(testHostname), }, { // **remote** endpoint address, should not be added as RS Addresses: []string{epIP1}, - NodeName: &otherHostname, + NodeName: ptr.To("other-hostname"), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -2771,7 +2749,6 @@ func TestSessionAffinity(t *testing.T) { NamespacedName: makeNSN("ns1", "svc1"), Port: "p80", } - timeoutSeconds := v1.DefaultClientIPServiceAffinitySeconds makeServiceMap(fp, makeTestService(svcPortName.Namespace, svcPortName.Name, func(svc *v1.Service) { @@ -2781,7 +2758,7 @@ func TestSessionAffinity(t *testing.T) { svc.Spec.SessionAffinity = v1.ServiceAffinityClientIP svc.Spec.SessionAffinityConfig = &v1.SessionAffinityConfig{ ClientIP: &v1.ClientIPConfig{ - TimeoutSeconds: &timeoutSeconds, + TimeoutSeconds: ptr.To[int32](v1.DefaultClientIPServiceAffinitySeconds), }, } svc.Spec.Ports = []v1.ServicePort{{ @@ -2815,9 +2792,6 @@ func makeServicePortName(ns, name, port string, protocol v1.Protocol) proxy.Serv } func Test_updateEndpointsMap(t *testing.T) { - var nodeName = testHostname - udpProtocol := v1.ProtocolUDP - emptyEndpointSlices := []*discovery.EndpointSlice{ makeTestEndpointSlice("ns1", "ep1", 1, func(*discovery.EndpointSlice) {}), } @@ -2827,9 +2801,9 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } subset2 := func(eps *discovery.EndpointSlice) { @@ -2838,9 +2812,9 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } namedPortLocal := []*discovery.EndpointSlice{ @@ -2849,12 +2823,12 @@ func Test_updateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -2869,9 +2843,9 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11-2"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11-2"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -2883,9 +2857,9 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(22), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -2897,16 +2871,16 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }, { Addresses: []string{"1.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} }), } @@ -2918,12 +2892,12 @@ func Test_updateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsWithLocal := []*discovery.EndpointSlice{ @@ -2934,16 +2908,16 @@ func Test_updateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"1.1.1.1"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } subset3 := func(eps *discovery.EndpointSlice) { @@ -2952,9 +2926,9 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p13"), - Port: pointer.Int32(13), - Protocol: &udpProtocol, + Name: ptr.To("p13"), + Port: ptr.To[int32](13), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsMultiplePortsLocal := []*discovery.EndpointSlice{ @@ -2967,16 +2941,16 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.1"}, }, { Addresses: []string{"1.1.1.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }} } subsetMultipleIPsPorts2 := func(eps *discovery.EndpointSlice) { @@ -2985,16 +2959,16 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.3"}, }, { Addresses: []string{"1.1.1.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p13"), - Port: pointer.Int32(13), - Protocol: &udpProtocol, + Name: ptr.To("p13"), + Port: ptr.To[int32](13), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p14"), - Port: pointer.Int32(14), - Protocol: &udpProtocol, + Name: ptr.To("p14"), + Port: ptr.To[int32](14), + Protocol: ptr.To(v1.ProtocolUDP), }} } subsetMultipleIPsPorts3 := func(eps *discovery.EndpointSlice) { @@ -3003,16 +2977,16 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"2.2.2.1"}, }, { Addresses: []string{"2.2.2.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p21"), - Port: pointer.Int32(21), - Protocol: &udpProtocol, + Name: ptr.To("p21"), + Port: ptr.To[int32](21), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p22"), - Port: pointer.Int32(22), - Protocol: &udpProtocol, + Name: ptr.To("p22"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } multipleSubsetsIPsPorts := []*discovery.EndpointSlice{ @@ -3024,54 +2998,54 @@ func Test_updateEndpointsMap(t *testing.T) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"2.2.2.2"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"2.2.2.22"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p22"), - Port: pointer.Int32(22), - Protocol: &udpProtocol, + Name: ptr.To("p22"), + Port: ptr.To[int32](22), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset2 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"2.2.2.3"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p23"), - Port: pointer.Int32(23), - Protocol: &udpProtocol, + Name: ptr.To("p23"), + Port: ptr.To[int32](23), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset3 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"4.4.4.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"4.4.4.5"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p44"), - Port: pointer.Int32(44), - Protocol: &udpProtocol, + Name: ptr.To("p44"), + Port: ptr.To[int32](44), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset4 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"4.4.4.6"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p45"), - Port: pointer.Int32(45), - Protocol: &udpProtocol, + Name: ptr.To("p45"), + Port: ptr.To[int32](45), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset5 := func(eps *discovery.EndpointSlice) { @@ -3082,9 +3056,9 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.11"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p11"), - Port: pointer.Int32(11), - Protocol: &udpProtocol, + Name: ptr.To("p11"), + Port: ptr.To[int32](11), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset6 := func(eps *discovery.EndpointSlice) { @@ -3093,13 +3067,13 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"1.1.1.2"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p12"), - Port: pointer.Int32(12), - Protocol: &udpProtocol, + Name: ptr.To("p12"), + Port: ptr.To[int32](12), + Protocol: ptr.To(v1.ProtocolUDP), }, { - Name: pointer.String("p122"), - Port: pointer.Int32(122), - Protocol: &udpProtocol, + Name: ptr.To("p122"), + Port: ptr.To[int32](122), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset7 := func(eps *discovery.EndpointSlice) { @@ -3108,21 +3082,21 @@ func Test_updateEndpointsMap(t *testing.T) { Addresses: []string{"3.3.3.3"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p33"), - Port: pointer.Int32(33), - Protocol: &udpProtocol, + Name: ptr.To("p33"), + Port: ptr.To[int32](33), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexSubset8 := func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{"4.4.4.4"}, - NodeName: &nodeName, + NodeName: ptr.To(testHostname), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p44"), - Port: pointer.Int32(44), - Protocol: &udpProtocol, + Name: ptr.To("p44"), + Port: ptr.To[int32](44), + Protocol: ptr.To(v1.ProtocolUDP), }} } complexBefore := []*discovery.EndpointSlice{ @@ -3581,7 +3555,7 @@ func Test_updateEndpointsMap(t *testing.T) { ipvs := ipvstest.NewFake() ipset := ipsettest.NewFake(testIPSetVersion) fp := NewFakeProxier(ipt, ipvs, ipset, nil, nil, v1.IPv4Protocol) - fp.hostname = nodeName + fp.hostname = testHostname // First check that after adding all previous versions of endpoints, // the fp.oldEndpoints is as we expect. @@ -4383,7 +4357,6 @@ func TestEndpointSliceE2E(t *testing.T) { }) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -4391,27 +4364,27 @@ func TestEndpointSliceE2E(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{{ Addresses: []string{"10.0.1.1"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String("node2"), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To("node2"), }, { Addresses: []string{"10.0.1.3"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String("node3"), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To("node3"), }, { // not ready endpoints should be ignored Addresses: []string{"10.0.1.4"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(false)}, - NodeName: pointer.String("node3"), + Conditions: discovery.EndpointConditions{Ready: ptr.To(false)}, + NodeName: ptr.To("node3"), }}, } @@ -4523,7 +4496,6 @@ func Test_HealthCheckNodePortWhenTerminating(t *testing.T) { }, }) - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -4531,26 +4503,26 @@ func Test_HealthCheckNodePortWhenTerminating(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{{ Addresses: []string{"10.0.1.1"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, }, { // not ready endpoints should be ignored Addresses: []string{"10.0.1.4"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(false)}, - NodeName: pointer.String(testHostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(false)}, + NodeName: ptr.To(testHostname), }}, } @@ -4569,43 +4541,43 @@ func Test_HealthCheckNodePortWhenTerminating(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{{ Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { // not ready endpoints should be ignored Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }}, } @@ -4678,9 +4650,6 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { hostname string } - cluster := v1.ServiceInternalTrafficPolicyCluster - local := v1.ServiceInternalTrafficPolicyLocal - testCases := []struct { name string internalTrafficPolicy *v1.ServiceInternalTrafficPolicy @@ -4692,7 +4661,7 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { }{ { name: "internalTrafficPolicy is cluster with non-zero local endpoints", - internalTrafficPolicy: &cluster, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -4709,7 +4678,7 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { }, { name: "internalTrafficPolicy is cluster with zero local endpoints", - internalTrafficPolicy: &cluster, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -4726,7 +4695,7 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { }, { name: "internalTrafficPolicy is local with non-zero local endpoints", - internalTrafficPolicy: &local, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -4741,7 +4710,7 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { }, { name: "internalTrafficPolicy is local with zero local endpoints", - internalTrafficPolicy: &local, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -4781,7 +4750,6 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { fp.OnServiceAdd(svc) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -4789,9 +4757,9 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, } @@ -4799,8 +4767,8 @@ func TestTestInternalTrafficPolicyE2E(t *testing.T) { for _, ep := range tc.endpoints { endpointSlice.Endpoints = append(endpointSlice.Endpoints, discovery.Endpoint{ Addresses: []string{ep.ip}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(ep.hostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(ep.hostname), }) } @@ -4860,8 +4828,6 @@ func Test_EndpointSliceReadyAndTerminatingCluster(t *testing.T) { // fp.endpointsSynced = true fp.endpointSlicesSynced = true - clusterInternalTrafficPolicy := v1.ServiceInternalTrafficPolicyCluster - serviceName := "svc1" // Add initial service namespaceName := "ns1" @@ -4872,7 +4838,7 @@ func Test_EndpointSliceReadyAndTerminatingCluster(t *testing.T) { Selector: map[string]string{"foo": "bar"}, Type: v1.ServiceTypeNodePort, ExternalTrafficPolicy: v1.ServiceExternalTrafficPolicyCluster, - InternalTrafficPolicy: &clusterInternalTrafficPolicy, + InternalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), ExternalIPs: []string{ "1.2.3.4", }, @@ -4888,7 +4854,6 @@ func Test_EndpointSliceReadyAndTerminatingCluster(t *testing.T) { }) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -4896,56 +4861,56 @@ func Test_EndpointSliceReadyAndTerminatingCluster(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, }, } @@ -5036,8 +5001,6 @@ func Test_EndpointSliceReadyAndTerminatingLocal(t *testing.T) { // fp.endpointsSynced = true fp.endpointSlicesSynced = true - clusterInternalTrafficPolicy := v1.ServiceInternalTrafficPolicyCluster - serviceName := "svc1" // Add initial service namespaceName := "ns1" @@ -5048,7 +5011,7 @@ func Test_EndpointSliceReadyAndTerminatingLocal(t *testing.T) { Selector: map[string]string{"foo": "bar"}, Type: v1.ServiceTypeNodePort, ExternalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, - InternalTrafficPolicy: &clusterInternalTrafficPolicy, + InternalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), ExternalIPs: []string{ "1.2.3.4", }, @@ -5064,7 +5027,6 @@ func Test_EndpointSliceReadyAndTerminatingLocal(t *testing.T) { }) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -5072,56 +5034,56 @@ func Test_EndpointSliceReadyAndTerminatingLocal(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, }, } @@ -5211,8 +5173,6 @@ func Test_EndpointSliceOnlyReadyAndTerminatingCluster(t *testing.T) { // fp.endpointsSynced = true fp.endpointSlicesSynced = true - clusterInternalTrafficPolicy := v1.ServiceInternalTrafficPolicyCluster - // Add initial service serviceName := "svc1" namespaceName := "ns1" @@ -5223,7 +5183,7 @@ func Test_EndpointSliceOnlyReadyAndTerminatingCluster(t *testing.T) { Selector: map[string]string{"foo": "bar"}, Type: v1.ServiceTypeNodePort, ExternalTrafficPolicy: v1.ServiceExternalTrafficPolicyCluster, - InternalTrafficPolicy: &clusterInternalTrafficPolicy, + InternalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), ExternalIPs: []string{ "1.2.3.4", }, @@ -5239,7 +5199,6 @@ func Test_EndpointSliceOnlyReadyAndTerminatingCluster(t *testing.T) { }) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -5247,56 +5206,56 @@ func Test_EndpointSliceOnlyReadyAndTerminatingCluster(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, { Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(false), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(false), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, }, } @@ -5386,8 +5345,6 @@ func Test_EndpointSliceOnlyReadyAndTerminatingLocal(t *testing.T) { // fp.endpointsSynced = true fp.endpointSlicesSynced = true - clusterInternalTrafficPolicy := v1.ServiceInternalTrafficPolicyCluster - // Add initial service serviceName := "svc1" namespaceName := "ns1" @@ -5398,7 +5355,7 @@ func Test_EndpointSliceOnlyReadyAndTerminatingLocal(t *testing.T) { Selector: map[string]string{"foo": "bar"}, Type: v1.ServiceTypeNodePort, ExternalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, - InternalTrafficPolicy: &clusterInternalTrafficPolicy, + InternalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyCluster), ExternalIPs: []string{ "1.2.3.4", }, @@ -5414,7 +5371,6 @@ func Test_EndpointSliceOnlyReadyAndTerminatingLocal(t *testing.T) { }) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -5422,56 +5378,56 @@ func Test_EndpointSliceOnlyReadyAndTerminatingLocal(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String(""), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To(""), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{ { Addresses: []string{"10.0.1.1"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.2"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.3"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(false), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(false), + Terminating: ptr.To(true), }, - NodeName: pointer.String(testHostname), + NodeName: ptr.To(testHostname), }, { Addresses: []string{"10.0.1.4"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(false), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(true), + Ready: ptr.To(false), + Serving: ptr.To(true), + Terminating: ptr.To(true), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, { Addresses: []string{"10.0.1.5"}, Conditions: discovery.EndpointConditions{ - Ready: pointer.Bool(true), - Serving: pointer.Bool(true), - Terminating: pointer.Bool(false), + Ready: ptr.To(true), + Serving: ptr.To(true), + Terminating: ptr.To(false), }, - NodeName: pointer.String("another-host"), + NodeName: ptr.To("another-host"), }, }, } @@ -5643,8 +5599,6 @@ func TestNoEndpointsMetric(t *testing.T) { hostname string } - internalTrafficPolicyLocal := v1.ServiceInternalTrafficPolicyLocal - externalTrafficPolicyLocal := v1.ServiceExternalTrafficPolicyLocal metrics.RegisterMetrics() testCases := []struct { @@ -5657,7 +5611,7 @@ func TestNoEndpointsMetric(t *testing.T) { }{ { name: "internalTrafficPolicy is set and there are local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -5666,7 +5620,7 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "externalTrafficPolicy is set and there are local endpoints", - externalTrafficPolicy: externalTrafficPolicyLocal, + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -5675,8 +5629,8 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "both policies are set and there are local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, - externalTrafficPolicy: externalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", testHostname}, {"10.0.1.2", "host1"}, @@ -5685,7 +5639,7 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "internalTrafficPolicy is set and there are no local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -5695,7 +5649,7 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "externalTrafficPolicy is set and there are no local endpoints", - externalTrafficPolicy: externalTrafficPolicyLocal, + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -5705,8 +5659,8 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "Both policies are set and there are no local endpoints", - internalTrafficPolicy: &internalTrafficPolicyLocal, - externalTrafficPolicy: externalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{ {"10.0.1.1", "host0"}, {"10.0.1.2", "host1"}, @@ -5717,8 +5671,8 @@ func TestNoEndpointsMetric(t *testing.T) { }, { name: "Both policies are set and there are no endpoints at all", - internalTrafficPolicy: &internalTrafficPolicyLocal, - externalTrafficPolicy: externalTrafficPolicyLocal, + internalTrafficPolicy: ptr.To(v1.ServiceInternalTrafficPolicyLocal), + externalTrafficPolicy: v1.ServiceExternalTrafficPolicyLocal, endpoints: []endpoint{}, expectedSyncProxyRulesNoLocalEndpointsTotalInternal: 0, expectedSyncProxyRulesNoLocalEndpointsTotalExternal: 0, @@ -5756,7 +5710,6 @@ func TestNoEndpointsMetric(t *testing.T) { fp.OnServiceAdd(svc) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", serviceName), @@ -5764,9 +5717,9 @@ func TestNoEndpointsMetric(t *testing.T) { Labels: map[string]string{discovery.LabelServiceName: serviceName}, }, Ports: []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, } @@ -5774,8 +5727,8 @@ func TestNoEndpointsMetric(t *testing.T) { for _, ep := range tc.endpoints { endpointSlice.Endpoints = append(endpointSlice.Endpoints, discovery.Endpoint{ Addresses: []string{ep.ip}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String(ep.hostname), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To(ep.hostname), }) } @@ -5844,9 +5797,6 @@ func TestDismissLocalhostRuleExist(t *testing.T) { } func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { - ipModeProxy := v1.LoadBalancerIPModeProxy - ipModeVIP := v1.LoadBalancerIPModeVIP - testCases := []struct { name string ipModeEnabled bool @@ -5861,7 +5811,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: false, svcIP: "10.20.30.41", svcLBIP: "1.2.3.4", - ipMode: &ipModeProxy, + ipMode: ptr.To(v1.LoadBalancerIPModeProxy), expectedServices: 2, }, { @@ -5869,7 +5819,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: false, svcIP: "10.20.30.42", svcLBIP: "1.2.3.5", - ipMode: &ipModeVIP, + ipMode: ptr.To(v1.LoadBalancerIPModeVIP), expectedServices: 2, }, { @@ -5886,7 +5836,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: true, svcIP: "10.20.30.41", svcLBIP: "1.2.3.4", - ipMode: &ipModeProxy, + ipMode: ptr.To(v1.LoadBalancerIPModeProxy), expectedServices: 1, }, { @@ -5894,7 +5844,7 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { ipModeEnabled: true, svcIP: "10.20.30.42", svcLBIP: "1.2.3.5", - ipMode: &ipModeVIP, + ipMode: ptr.To(v1.LoadBalancerIPModeVIP), expectedServices: 2, }, { @@ -5935,7 +5885,6 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { }), ) - tcpProtocol := v1.ProtocolTCP makeEndpointSliceMap(fp, makeTestEndpointSlice("ns1", "svc1", 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 @@ -5943,9 +5892,9 @@ func TestLoadBalancerIngressRouteTypeProxy(t *testing.T) { Addresses: []string{"10.180.0.1"}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String("p80"), - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Name: ptr.To("p80"), + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) diff --git a/pkg/proxy/kubemark/hollow_proxy.go b/pkg/proxy/kubemark/hollow_proxy.go index fd90ae09188..f67b74835f2 100644 --- a/pkg/proxy/kubemark/hollow_proxy.go +++ b/pkg/proxy/kubemark/hollow_proxy.go @@ -38,7 +38,7 @@ import ( utilnode "k8s.io/kubernetes/pkg/util/node" utilexec "k8s.io/utils/exec" netutils "k8s.io/utils/net" - utilpointer "k8s.io/utils/pointer" + "k8s.io/utils/ptr" "k8s.io/klog/v2" ) @@ -130,7 +130,7 @@ func NewHollowProxyOrDie( Config: &proxyconfigapi.KubeProxyConfiguration{ Mode: proxyconfigapi.ProxyMode("fake"), ConfigSyncPeriod: metav1.Duration{Duration: 30 * time.Second}, - OOMScoreAdj: utilpointer.Int32Ptr(0), + OOMScoreAdj: ptr.To[int32](0), }, Client: client, diff --git a/pkg/proxy/winkernel/proxier_test.go b/pkg/proxy/winkernel/proxier_test.go index fd2856471f9..1b9bd287d24 100644 --- a/pkg/proxy/winkernel/proxier_test.go +++ b/pkg/proxy/winkernel/proxier_test.go @@ -37,7 +37,7 @@ import ( "k8s.io/kubernetes/pkg/proxy/healthcheck" fakehcn "k8s.io/kubernetes/pkg/proxy/winkernel/testing" netutils "k8s.io/utils/net" - "k8s.io/utils/pointer" + "k8s.io/utils/ptr" ) const ( @@ -146,7 +146,6 @@ func TestCreateServiceVip(t *testing.T) { Port: "p80", Protocol: v1.ProtocolTCP, } - timeoutSeconds := v1.DefaultClientIPServiceAffinitySeconds makeServiceMap(proxier, makeTestService(svcPortName.Namespace, svcPortName.Name, func(svc *v1.Service) { @@ -156,7 +155,7 @@ func TestCreateServiceVip(t *testing.T) { svc.Spec.SessionAffinity = v1.ServiceAffinityClientIP svc.Spec.SessionAffinityConfig = &v1.SessionAffinityConfig{ ClientIP: &v1.ClientIPConfig{ - TimeoutSeconds: &timeoutSeconds, + TimeoutSeconds: ptr.To[int32](v1.DefaultClientIPServiceAffinitySeconds), }, } svc.Spec.Ports = []v1.ServicePort{{ @@ -200,7 +199,6 @@ func TestCreateRemoteEndpointOverlay(t *testing.T) { Port: "p80", Protocol: v1.ProtocolTCP, } - tcpProtocol := v1.ProtocolTCP makeServiceMap(proxier, makeTestService(svcPortName.Namespace, svcPortName.Name, func(svc *v1.Service) { @@ -221,9 +219,9 @@ func TestCreateRemoteEndpointOverlay(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -258,14 +256,13 @@ func TestCreateRemoteEndpointL2Bridge(t *testing.T) { t.Error() } - tcpProtocol := v1.ProtocolTCP svcIP := "10.20.30.41" svcPort := 80 svcNodePort := 3001 svcPortName := proxy.ServicePortName{ NamespacedName: makeNSN("ns1", "svc1"), Port: "p80", - Protocol: tcpProtocol, + Protocol: v1.ProtocolTCP, } makeServiceMap(proxier, @@ -275,7 +272,7 @@ func TestCreateRemoteEndpointL2Bridge(t *testing.T) { svc.Spec.Ports = []v1.ServicePort{{ Name: svcPortName.Port, Port: int32(svcPort), - Protocol: tcpProtocol, + Protocol: v1.ProtocolTCP, NodePort: int32(svcNodePort), }} }), @@ -287,9 +284,9 @@ func TestCreateRemoteEndpointL2Bridge(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -316,7 +313,6 @@ func TestCreateRemoteEndpointL2Bridge(t *testing.T) { } func TestSharedRemoteEndpointDelete(t *testing.T) { syncPeriod := 30 * time.Second - tcpProtocol := v1.ProtocolTCP proxier := NewFakeProxier(syncPeriod, syncPeriod, clusterCIDR, "testhost", netutils.ParseIPSloppy("10.0.0.1"), "L2Bridge") if proxier == nil { t.Error() @@ -369,9 +365,9 @@ func TestSharedRemoteEndpointDelete(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName1.Port), - Port: pointer.Int32(int32(svcPort1)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName1.Port), + Port: ptr.To(int32(svcPort1)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice(svcPortName2.Namespace, svcPortName2.Name, 1, func(eps *discovery.EndpointSlice) { @@ -380,9 +376,9 @@ func TestSharedRemoteEndpointDelete(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName2.Port), - Port: pointer.Int32(int32(svcPort2)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName2.Port), + Port: ptr.To(int32(svcPort2)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -428,9 +424,9 @@ func TestSharedRemoteEndpointDelete(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName2.Port), - Port: pointer.Int32(int32(svcPort2)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName2.Port), + Port: ptr.To(int32(svcPort2)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -505,7 +501,6 @@ func TestSharedRemoteEndpointUpdate(t *testing.T) { }), ) - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(proxier, makeTestEndpointSlice(svcPortName1.Namespace, svcPortName1.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 @@ -513,9 +508,9 @@ func TestSharedRemoteEndpointUpdate(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName1.Port), - Port: pointer.Int32(int32(svcPort1)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName1.Port), + Port: ptr.To(int32(svcPort1)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice(svcPortName2.Namespace, svcPortName2.Name, 1, func(eps *discovery.EndpointSlice) { @@ -524,9 +519,9 @@ func TestSharedRemoteEndpointUpdate(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName2.Port), - Port: pointer.Int32(int32(svcPort2)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName2.Port), + Port: ptr.To(int32(svcPort2)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -583,9 +578,9 @@ func TestSharedRemoteEndpointUpdate(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName1.Port), - Port: pointer.Int32(int32(svcPort1)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName1.Port), + Port: ptr.To(int32(svcPort1)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), makeTestEndpointSlice(svcPortName1.Namespace, svcPortName1.Name, 1, func(eps *discovery.EndpointSlice) { @@ -594,14 +589,14 @@ func TestSharedRemoteEndpointUpdate(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName1.Port), - Port: pointer.Int32(int32(svcPort1)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName1.Port), + Port: ptr.To(int32(svcPort1)), + Protocol: ptr.To(v1.ProtocolTCP), }, { - Name: pointer.String("p443"), - Port: pointer.Int32(int32(443)), - Protocol: &tcpProtocol, + Name: ptr.To("p443"), + Port: ptr.To[int32](443), + Protocol: ptr.To(v1.ProtocolTCP), }} })) @@ -634,7 +629,6 @@ func TestSharedRemoteEndpointUpdate(t *testing.T) { } func TestCreateLoadBalancer(t *testing.T) { syncPeriod := 30 * time.Second - tcpProtocol := v1.ProtocolTCP proxier := NewFakeProxier(syncPeriod, syncPeriod, clusterCIDR, "testhost", netutils.ParseIPSloppy("10.0.0.1"), NETWORK_TYPE_OVERLAY) if proxier == nil { t.Error() @@ -668,9 +662,9 @@ func TestCreateLoadBalancer(t *testing.T) { Addresses: []string{epIpAddressRemote}, }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -723,18 +717,17 @@ func TestCreateDsrLoadBalancer(t *testing.T) { }} }), ) - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(proxier, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{epIpAddressRemote}, - NodeName: pointer.String("testhost"), + NodeName: ptr.To("testhost"), }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.String(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -803,18 +796,17 @@ func TestClusterIPLBInCreateDsrLoadBalancer(t *testing.T) { }} }), ) - tcpProtocol := v1.ProtocolTCP populateEndpointSlices(proxier, makeTestEndpointSlice(svcPortName.Namespace, svcPortName.Name, 1, func(eps *discovery.EndpointSlice) { eps.AddressType = discovery.AddressTypeIPv4 eps.Endpoints = []discovery.Endpoint{{ Addresses: []string{epIpAddressRemote}, - NodeName: pointer.StringPtr("testhost2"), // This will make this endpoint as a remote endpoint + NodeName: ptr.To("testhost2"), // This will make this endpoint as a remote endpoint }} eps.Ports = []discovery.EndpointPort{{ - Name: pointer.StringPtr(svcPortName.Port), - Port: pointer.Int32(int32(svcPort)), - Protocol: &tcpProtocol, + Name: ptr.To(svcPortName.Port), + Port: ptr.To(int32(svcPort)), + Protocol: ptr.To(v1.ProtocolTCP), }} }), ) @@ -877,7 +869,6 @@ func TestEndpointSlice(t *testing.T) { }) // Add initial endpoint slice - tcpProtocol := v1.ProtocolTCP endpointSlice := &discovery.EndpointSlice{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-1", svcPortName.Name), @@ -886,14 +877,14 @@ func TestEndpointSlice(t *testing.T) { }, Ports: []discovery.EndpointPort{{ Name: &svcPortName.Port, - Port: pointer.Int32(80), - Protocol: &tcpProtocol, + Port: ptr.To[int32](80), + Protocol: ptr.To(v1.ProtocolTCP), }}, AddressType: discovery.AddressTypeIPv4, Endpoints: []discovery.Endpoint{{ Addresses: []string{"192.168.2.3"}, - Conditions: discovery.EndpointConditions{Ready: pointer.Bool(true)}, - NodeName: pointer.String("testhost2"), + Conditions: discovery.EndpointConditions{Ready: ptr.To(true)}, + NodeName: ptr.To("testhost2"), }}, }