@@ -39,6 +39,7 @@ func Test_targetGroupBindingValidator_ValidateCreate(t *testing.T) {
39
39
}
40
40
instanceTargetType := elbv2api .TargetTypeInstance
41
41
ipTargetType := elbv2api .TargetTypeIP
42
+ clusterVpcID := "vpcid-02"
42
43
tests := []struct {
43
44
name string
44
45
fields fields
@@ -194,7 +195,7 @@ func Test_targetGroupBindingValidator_ValidateCreate(t *testing.T) {
194
195
TargetGroupArn : awssdk .String ("tg-2" ),
195
196
TargetType : awssdk .String ("instance" ),
196
197
IpAddressType : awssdk .String ("ipv6" ),
197
- VpcId : awssdk . String ( "vpcid-02" ) ,
198
+ VpcId : & clusterVpcID ,
198
199
},
199
200
},
200
201
},
@@ -207,7 +208,7 @@ func Test_targetGroupBindingValidator_ValidateCreate(t *testing.T) {
207
208
TargetGroupArn : awssdk .String ("tg-2" ),
208
209
TargetType : awssdk .String ("instance" ),
209
210
IpAddressType : awssdk .String ("ipv6" ),
210
- VpcId : awssdk . String ( "vpcid-02" ) ,
211
+ VpcId : & clusterVpcID ,
211
212
},
212
213
},
213
214
},
@@ -219,7 +220,7 @@ func Test_targetGroupBindingValidator_ValidateCreate(t *testing.T) {
219
220
TargetGroupARN : "tg-2" ,
220
221
TargetType : & instanceTargetType ,
221
222
IPAddressType : & targetGroupIPAddressTypeIPv6 ,
222
- VpcID : "vpcid-02" ,
223
+ VpcID : clusterVpcID ,
223
224
},
224
225
},
225
226
},
@@ -238,7 +239,7 @@ func Test_targetGroupBindingValidator_ValidateCreate(t *testing.T) {
238
239
TargetGroupArn : awssdk .String ("tg-2" ),
239
240
TargetType : awssdk .String ("instance" ),
240
241
IpAddressType : awssdk .String ("ipv6" ),
241
- VpcId : awssdk . String ( "vpcid-02" ) ,
242
+ VpcId : & clusterVpcID ,
242
243
},
243
244
},
244
245
},
@@ -251,7 +252,7 @@ func Test_targetGroupBindingValidator_ValidateCreate(t *testing.T) {
251
252
TargetGroupArn : awssdk .String ("tg-2" ),
252
253
TargetType : awssdk .String ("instance" ),
253
254
IpAddressType : awssdk .String ("ipv6" ),
254
- VpcId : awssdk . String ( "vpcid-02" ) ,
255
+ VpcId : & clusterVpcID ,
255
256
},
256
257
},
257
258
},
@@ -479,6 +480,7 @@ func Test_targetGroupBindingValidator_checkImmutableFields(t *testing.T) {
479
480
}
480
481
instanceTargetType := elbv2api .TargetTypeInstance
481
482
ipTargetType := elbv2api .TargetTypeIP
483
+ clusterVpcID := "cluster-vpc-id"
482
484
tests := []struct {
483
485
name string
484
486
args args
@@ -746,11 +748,31 @@ func Test_targetGroupBindingValidator_checkImmutableFields(t *testing.T) {
746
748
},
747
749
wantErr : errors .New ("TargetGroupBinding update may not change these fields: spec.vpcID" ),
748
750
},
751
+ {
752
+ name : "VpcID modified from nil to cluster vpc-id is allowed" ,
753
+ args : args {
754
+ tgb : & elbv2api.TargetGroupBinding {
755
+ Spec : elbv2api.TargetGroupBindingSpec {
756
+ TargetGroupARN : "tg-2" ,
757
+ TargetType : & ipTargetType ,
758
+ VpcID : clusterVpcID ,
759
+ },
760
+ },
761
+ oldTGB : & elbv2api.TargetGroupBinding {
762
+ Spec : elbv2api.TargetGroupBindingSpec {
763
+ TargetGroupARN : "tg-2" ,
764
+ TargetType : & ipTargetType ,
765
+ },
766
+ },
767
+ },
768
+ wantErr : nil ,
769
+ },
749
770
}
750
771
for _ , tt := range tests {
751
772
t .Run (tt .name , func (t * testing.T ) {
752
773
v := & targetGroupBindingValidator {
753
774
logger : logr .New (& log.NullLogSink {}),
775
+ vpcID : clusterVpcID ,
754
776
}
755
777
err := v .checkImmutableFields (tt .args .tgb , tt .args .oldTGB )
756
778
if tt .wantErr != nil {
0 commit comments