@@ -12,11 +12,10 @@ import (
1212 "github.com/onsi/ginkgo/v2"
1313 "github.com/onsi/gomega"
1414 rav1 "github.com/ovn-org/ovn-kubernetes/go-controller/pkg/crd/routeadvertisements/v1"
15- applycfgrav1 "github.com/ovn-org/ovn-kubernetes/go-controller/pkg/crd/routeadvertisements/v1/apis/applyconfiguration/routeadvertisements/v1"
1615 raclientset "github.com/ovn-org/ovn-kubernetes/go-controller/pkg/crd/routeadvertisements/v1/apis/clientset/versioned"
16+ apitypes "github.com/ovn-org/ovn-kubernetes/go-controller/pkg/crd/types"
1717 udnv1 "github.com/ovn-org/ovn-kubernetes/go-controller/pkg/crd/userdefinednetwork/v1"
1818 udnclientset "github.com/ovn-org/ovn-kubernetes/go-controller/pkg/crd/userdefinednetwork/v1/apis/clientset/versioned"
19- v1 "k8s.io/client-go/applyconfigurations/meta/v1"
2019
2120 corev1 "k8s.io/api/core/v1"
2221 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -588,22 +587,33 @@ var _ = ginkgo.DescribeTableSubtree("BGP: isolation between advertised networks"
588587 gomega .Expect (err ).NotTo (gomega .HaveOccurred ())
589588
590589 ginkgo .By ("Expose networks" )
591- raCfg := applycfgrav1 .RouteAdvertisements ("advertised-networks-isolation-ra" ).
592- WithSpec (
593- applycfgrav1 .RouteAdvertisementsSpec ().
594- WithAdvertisements (rav1 .PodNetwork ).
595- WithNetworkSelector (
596- v1 .LabelSelector ().WithMatchLabels (map [string ]string {"advertised-networks-isolation" :"" }),
597- ),
598- )
590+ ra := & rav1.RouteAdvertisements {
591+ ObjectMeta : metav1.ObjectMeta {
592+ GenerateName : "advertised-networks-isolation-ra" ,
593+ },
594+ Spec : rav1.RouteAdvertisementsSpec {
595+ NetworkSelectors : apitypes.NetworkSelectors {
596+ apitypes.NetworkSelector {
597+ NetworkSelectionType : apitypes .ClusterUserDefinedNetworks ,
598+ ClusterUserDefinedNetworkSelector : & apitypes.ClusterUserDefinedNetworkSelector {
599+ NetworkSelector : metav1.LabelSelector {
600+ MatchLabels : map [string ]string {"advertised-networks-isolation" : "" },
601+ },
602+ },
603+ },
604+ },
605+ NodeSelector : metav1.LabelSelector {},
606+ FRRConfigurationSelector : metav1.LabelSelector {},
607+ Advertisements : []rav1.AdvertisementType {
608+ rav1 .PodNetwork ,
609+ },
610+ },
611+ }
599612
600613 raClient , err := raclientset .NewForConfig (f .ClientConfig ())
601614 gomega .Expect (err ).NotTo (gomega .HaveOccurred ())
602615
603- ra , err = raClient .K8sV1 ().RouteAdvertisements ().Apply (context .TODO (), raCfg , metav1.ApplyOptions {
604- FieldManager : f .Namespace .Name ,
605- Force : true ,
606- })
616+ ra , err = raClient .K8sV1 ().RouteAdvertisements ().Create (context .TODO (), ra , metav1.CreateOptions {})
607617 gomega .Expect (err ).NotTo (gomega .HaveOccurred ())
608618
609619 ginkgo .By ("ensure route advertisement matching both networks was created successfully" )
@@ -670,7 +680,7 @@ var _ = ginkgo.DescribeTableSubtree("BGP: isolation between advertised networks"
670680 // checkConnectivity performs a curl command from a specified client (pod or node)
671681 // to targetAddress. If clientNamespace is empty the function assumes clientName is a node that will be used as the
672682 // client.
673- var checkConnectivity = func (clientName , clientNamespace , targetAddress string ) (string , error ) {
683+ var checkConnectivity = func (clientName , clientNamespace , targetAddress string ) (string , error ) {
674684 curlCmd := []string {"curl" , "-g" , "-q" , "-s" , "--max-time" , "5" , targetAddress }
675685 var out string
676686 var err error
0 commit comments