@@ -45,6 +45,12 @@ func newTestInfra() *ir.Infra {
45
45
return newTestInfraWithAnnotations (nil )
46
46
}
47
47
48
+ func newTestInfraWithNamespace (namespace string ) * ir.Infra {
49
+ i := newTestInfra ()
50
+ i .Proxy .Namespace = namespace
51
+ return i
52
+ }
53
+
48
54
func newTestInfraWithIPFamily (family * egv1a1.IPFamily ) * ir.Infra {
49
55
i := newTestInfra ()
50
56
i .Proxy .Config = & egv1a1.EnvoyProxy {
@@ -120,16 +126,17 @@ func TestDeployment(t *testing.T) {
120
126
require .NoError (t , err )
121
127
122
128
cases := []struct {
123
- caseName string
124
- infra * ir.Infra
125
- deploy * egv1a1.KubernetesDeploymentSpec
126
- shutdown * egv1a1.ShutdownConfig
127
- shutdownManager * egv1a1.ShutdownManager
128
- proxyLogging map [egv1a1.ProxyLogComponent ]egv1a1.LogLevel
129
- bootstrap string
130
- telemetry * egv1a1.ProxyTelemetry
131
- concurrency * int32
132
- extraArgs []string
129
+ caseName string
130
+ infra * ir.Infra
131
+ deploy * egv1a1.KubernetesDeploymentSpec
132
+ shutdown * egv1a1.ShutdownConfig
133
+ shutdownManager * egv1a1.ShutdownManager
134
+ proxyLogging map [egv1a1.ProxyLogComponent ]egv1a1.LogLevel
135
+ bootstrap string
136
+ telemetry * egv1a1.ProxyTelemetry
137
+ concurrency * int32
138
+ extraArgs []string
139
+ gatewayNamespaceMode bool
133
140
}{
134
141
{
135
142
caseName : "default" ,
@@ -560,6 +567,11 @@ func TestDeployment(t *testing.T) {
560
567
Name : ptr .To ("custom-deployment-name" ),
561
568
},
562
569
},
570
+ {
571
+ caseName : "gateway-namespace-mode" ,
572
+ infra : newTestInfraWithNamespace ("default" ),
573
+ gatewayNamespaceMode : true ,
574
+ },
563
575
}
564
576
for _ , tc := range cases {
565
577
t .Run (tc .caseName , func (t * testing.T ) {
@@ -604,8 +616,21 @@ func TestDeployment(t *testing.T) {
604
616
if len (tc .extraArgs ) > 0 {
605
617
tc .infra .Proxy .Config .Spec .ExtraArgs = tc .extraArgs
606
618
}
619
+ namespace := cfg .ControllerNamespace
620
+ if tc .gatewayNamespaceMode {
621
+ deployType := egv1a1 .KubernetesDeployModeType (egv1a1 .KubernetesDeployModeTypeGatewayNamespace )
622
+ cfg .EnvoyGateway .Provider = & egv1a1.EnvoyGatewayProvider {
623
+ Type : egv1a1 .ProviderTypeKubernetes ,
624
+ Kubernetes : & egv1a1.EnvoyGatewayKubernetesProvider {
625
+ Deploy : & egv1a1.KubernetesDeployMode {
626
+ Type : & deployType ,
627
+ },
628
+ },
629
+ }
630
+ namespace = tc .infra .GetProxyInfra ().Namespace
631
+ }
607
632
608
- r := NewResourceRender (cfg . Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
633
+ r := NewResourceRender (namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
609
634
dp , err := r .Deployment ()
610
635
require .NoError (t , err )
611
636
@@ -1034,7 +1059,7 @@ func TestDaemonSet(t *testing.T) {
1034
1059
tc .infra .Proxy .Config .Spec .ExtraArgs = tc .extraArgs
1035
1060
}
1036
1061
1037
- r := NewResourceRender (cfg .Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1062
+ r := NewResourceRender (cfg .ControllerNamespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1038
1063
ds , err := r .DaemonSet ()
1039
1064
require .NoError (t , err )
1040
1065
@@ -1199,7 +1224,7 @@ func TestService(t *testing.T) {
1199
1224
provider .EnvoyService = tc .service
1200
1225
}
1201
1226
1202
- r := NewResourceRender (cfg .Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1227
+ r := NewResourceRender (cfg .ControllerNamespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1203
1228
svc , err := r .Service ()
1204
1229
require .NoError (t , err )
1205
1230
@@ -1242,7 +1267,7 @@ func TestConfigMap(t *testing.T) {
1242
1267
1243
1268
for _ , tc := range cases {
1244
1269
t .Run (tc .name , func (t * testing.T ) {
1245
- r := NewResourceRender (cfg .Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1270
+ r := NewResourceRender (cfg .ControllerNamespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1246
1271
cm , err := r .ConfigMap ("" )
1247
1272
require .NoError (t , err )
1248
1273
@@ -1285,7 +1310,7 @@ func TestServiceAccount(t *testing.T) {
1285
1310
1286
1311
for _ , tc := range cases {
1287
1312
t .Run (tc .name , func (t * testing.T ) {
1288
- r := NewResourceRender (cfg .Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1313
+ r := NewResourceRender (cfg .ControllerNamespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1289
1314
sa , err := r .ServiceAccount ()
1290
1315
require .NoError (t , err )
1291
1316
@@ -1400,7 +1425,7 @@ func TestPDB(t *testing.T) {
1400
1425
1401
1426
provider .GetEnvoyProxyKubeProvider ()
1402
1427
1403
- r := NewResourceRender (cfg .Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1428
+ r := NewResourceRender (cfg .ControllerNamespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1404
1429
1405
1430
pdb , err := r .PodDisruptionBudget ()
1406
1431
require .NoError (t , err )
@@ -1512,7 +1537,7 @@ func TestHorizontalPodAutoscaler(t *testing.T) {
1512
1537
}
1513
1538
provider .GetEnvoyProxyKubeProvider ()
1514
1539
1515
- r := NewResourceRender (cfg .Namespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1540
+ r := NewResourceRender (cfg .ControllerNamespace , cfg .DNSDomain , tc .infra .GetProxyInfra (), cfg .EnvoyGateway )
1516
1541
hpa , err := r .HorizontalPodAutoscaler ()
1517
1542
require .NoError (t , err )
1518
1543
0 commit comments