@@ -616,7 +616,7 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
616616wantErr : errors .New ("some error" ),
617617},
618618{
619- name : "subnet with cluster tag gets precedence, with SubnetsClusterTagCheck enabled " ,
619+ name : "subnet with cluster tag gets precedence" ,
620620fields : fields {
621621vpcID : "vpc-1" ,
622622clusterName : "kube-cluster" ,
@@ -672,7 +672,6 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
672672opts : []SubnetsResolveOption {
673673WithSubnetsResolveLBType (elbv2model .LoadBalancerTypeNetwork ),
674674WithSubnetsResolveLBScheme (elbv2model .LoadBalancerSchemeInternetFacing ),
675- WithSubnetsClusterTagCheck (defaultSubnetsClusterTagCheck ),
676675},
677676},
678677want : []* ec2sdk.Subnet {
@@ -691,7 +690,7 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
691690},
692691},
693692{
694- name : "subnet with cluster tag does not get precedence , with SubnetsClusterTagCheck disabled " ,
693+ name : "subnets tagged for some other clusters get ignored , with SubnetsClusterTagCheck enabled " ,
695694fields : fields {
696695vpcID : "vpc-1" ,
697696clusterName : "kube-cluster" ,
@@ -712,14 +711,44 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
712711output : []* ec2sdk.Subnet {
713712{
714713SubnetId : awssdk .String ("subnet-1" ),
714+ AvailabilityZone : awssdk .String ("us-west-2a" ),
715+ AvailabilityZoneId : awssdk .String ("usw2-az1" ),
716+ VpcId : awssdk .String ("vpc-1" ),
717+ Tags : []* ec2sdk.Tag {
718+ {
719+ Key : awssdk .String ("kubernetes.io/cluster/some-other-cluster" ),
720+ Value : awssdk .String ("owned" ),
721+ },
722+ },
723+ },
724+ {
725+ SubnetId : awssdk .String ("subnet-3" ),
726+ AvailabilityZone : awssdk .String ("us-west-2a" ),
727+ AvailabilityZoneId : awssdk .String ("usw2-az1" ),
728+ VpcId : awssdk .String ("vpc-1" ),
729+ Tags : []* ec2sdk.Tag {
730+ {
731+ Key : awssdk .String ("kubernetes.io/cluster/kube-cluster" ),
732+ Value : awssdk .String ("owned" ),
733+ },
734+ },
735+ },
736+ {
737+ SubnetId : awssdk .String ("subnet-4" ),
715738AvailabilityZone : awssdk .String ("us-west-2b" ),
716739AvailabilityZoneId : awssdk .String ("usw2-az2" ),
717740VpcId : awssdk .String ("vpc-1" ),
741+ Tags : []* ec2sdk.Tag {
742+ {
743+ Key : awssdk .String ("kubernetes.io/cluster/no-cluster" ),
744+ Value : awssdk .String ("owned" ),
745+ },
746+ },
718747},
719748{
720749SubnetId : awssdk .String ("subnet-2" ),
721- AvailabilityZone : awssdk .String ("us-west-2b " ),
722- AvailabilityZoneId : awssdk .String ("usw2-az2 " ),
750+ AvailabilityZone : awssdk .String ("us-west-2a " ),
751+ AvailabilityZoneId : awssdk .String ("usw2-az1 " ),
723752VpcId : awssdk .String ("vpc-1" ),
724753Tags : []* ec2sdk.Tag {
725754{
@@ -728,15 +757,30 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
728757},
729758},
730759},
760+ {
761+ SubnetId : awssdk .String ("subnet-5" ),
762+ AvailabilityZone : awssdk .String ("us-west-2c" ),
763+ AvailabilityZoneId : awssdk .String ("usw2-az3" ),
764+ VpcId : awssdk .String ("vpc-1" ),
765+ },
731766},
732767},
733768},
734769fetchAZInfosCalls : []fetchAZInfosCall {
735770{
736- availabilityZoneIDs : []string {"usw2-az2 " },
771+ availabilityZoneIDs : []string {"usw2-az1 " },
737772azInfoByAZID : map [string ]ec2sdk.AvailabilityZone {
738- "usw2-az2" : {
739- ZoneId : awssdk .String ("usw2-az2" ),
773+ "usw2-az1" : {
774+ ZoneId : awssdk .String ("usw2-az1" ),
775+ ZoneType : awssdk .String ("availability-zone" ),
776+ },
777+ },
778+ },
779+ {
780+ availabilityZoneIDs : []string {"usw2-az3" },
781+ azInfoByAZID : map [string ]ec2sdk.AvailabilityZone {
782+ "usw2-az3" : {
783+ ZoneId : awssdk .String ("usw2-az3" ),
740784ZoneType : awssdk .String ("availability-zone" ),
741785},
742786},
@@ -747,20 +791,32 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
747791opts : []SubnetsResolveOption {
748792WithSubnetsResolveLBType (elbv2model .LoadBalancerTypeNetwork ),
749793WithSubnetsResolveLBScheme (elbv2model .LoadBalancerSchemeInternetFacing ),
750- WithSubnetsClusterTagCheck (false ),
794+ WithSubnetsClusterTagCheck (defaultSubnetsClusterTagCheck ),
751795},
752796},
753797want : []* ec2sdk.Subnet {
754798{
755- SubnetId : awssdk .String ("subnet-1" ),
756- AvailabilityZone : awssdk .String ("us-west-2b" ),
757- AvailabilityZoneId : awssdk .String ("usw2-az2" ),
799+ SubnetId : awssdk .String ("subnet-2" ),
800+ AvailabilityZone : awssdk .String ("us-west-2a" ),
801+ AvailabilityZoneId : awssdk .String ("usw2-az1" ),
802+ VpcId : awssdk .String ("vpc-1" ),
803+ Tags : []* ec2sdk.Tag {
804+ {
805+ Key : awssdk .String ("kubernetes.io/cluster/kube-cluster" ),
806+ Value : awssdk .String ("owned" ),
807+ },
808+ },
809+ },
810+ {
811+ SubnetId : awssdk .String ("subnet-5" ),
812+ AvailabilityZone : awssdk .String ("us-west-2c" ),
813+ AvailabilityZoneId : awssdk .String ("usw2-az3" ),
758814VpcId : awssdk .String ("vpc-1" ),
759815},
760816},
761817},
762818{
763- name : "subnets tagged for some other clusters get ignored" ,
819+ name : "subnets tagged for some other clusters doesn't get ignored, with SubnetsClusterTagCheck disabled " ,
764820fields : fields {
765821vpcID : "vpc-1" ,
766822clusterName : "kube-cluster" ,
@@ -780,9 +836,9 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
780836},
781837output : []* ec2sdk.Subnet {
782838{
783- SubnetId : awssdk .String ("subnet-1 " ),
784- AvailabilityZone : awssdk .String ("us-west-2a " ),
785- AvailabilityZoneId : awssdk .String ("usw2-az1 " ),
839+ SubnetId : awssdk .String ("subnet-3 " ),
840+ AvailabilityZone : awssdk .String ("us-west-2c " ),
841+ AvailabilityZoneId : awssdk .String ("usw2-az3 " ),
786842VpcId : awssdk .String ("vpc-1" ),
787843Tags : []* ec2sdk.Tag {
788844{
@@ -792,33 +848,21 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
792848},
793849},
794850{
795- SubnetId : awssdk .String ("subnet-3 " ),
851+ SubnetId : awssdk .String ("subnet-1 " ),
796852AvailabilityZone : awssdk .String ("us-west-2a" ),
797853AvailabilityZoneId : awssdk .String ("usw2-az1" ),
798854VpcId : awssdk .String ("vpc-1" ),
799855Tags : []* ec2sdk.Tag {
800856{
801- Key : awssdk .String ("kubernetes.io/cluster/kube-cluster" ),
802- Value : awssdk .String ("owned" ),
803- },
804- },
805- },
806- {
807- SubnetId : awssdk .String ("subnet-4" ),
808- AvailabilityZone : awssdk .String ("us-west-2b" ),
809- AvailabilityZoneId : awssdk .String ("usw2-az2" ),
810- VpcId : awssdk .String ("vpc-1" ),
811- Tags : []* ec2sdk.Tag {
812- {
813- Key : awssdk .String ("kubernetes.io/cluster/no-cluster" ),
857+ Key : awssdk .String ("kubernetes.io/cluster/some-other-cluster" ),
814858Value : awssdk .String ("owned" ),
815859},
816860},
817861},
818862{
819863SubnetId : awssdk .String ("subnet-2" ),
820- AvailabilityZone : awssdk .String ("us-west-2a " ),
821- AvailabilityZoneId : awssdk .String ("usw2-az1 " ),
864+ AvailabilityZone : awssdk .String ("us-west-2c " ),
865+ AvailabilityZoneId : awssdk .String ("usw2-az3 " ),
822866VpcId : awssdk .String ("vpc-1" ),
823867Tags : []* ec2sdk.Tag {
824868{
@@ -827,12 +871,6 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
827871},
828872},
829873},
830- {
831- SubnetId : awssdk .String ("subnet-5" ),
832- AvailabilityZone : awssdk .String ("us-west-2c" ),
833- AvailabilityZoneId : awssdk .String ("usw2-az3" ),
834- VpcId : awssdk .String ("vpc-1" ),
835- },
836874},
837875},
838876},
@@ -861,26 +899,33 @@ func Test_defaultSubnetsResolver_ResolveViaDiscovery(t *testing.T) {
861899opts : []SubnetsResolveOption {
862900WithSubnetsResolveLBType (elbv2model .LoadBalancerTypeNetwork ),
863901WithSubnetsResolveLBScheme (elbv2model .LoadBalancerSchemeInternetFacing ),
902+ WithSubnetsClusterTagCheck (false ),
864903},
865904},
866905want : []* ec2sdk.Subnet {
867906{
868- SubnetId : awssdk .String ("subnet-2 " ),
907+ SubnetId : awssdk .String ("subnet-1 " ),
869908AvailabilityZone : awssdk .String ("us-west-2a" ),
870909AvailabilityZoneId : awssdk .String ("usw2-az1" ),
871910VpcId : awssdk .String ("vpc-1" ),
872911Tags : []* ec2sdk.Tag {
873912{
874- Key : awssdk .String ("kubernetes.io/cluster/kube -cluster" ),
913+ Key : awssdk .String ("kubernetes.io/cluster/some-other -cluster" ),
875914Value : awssdk .String ("owned" ),
876915},
877916},
878917},
879918{
880- SubnetId : awssdk .String ("subnet-5 " ),
919+ SubnetId : awssdk .String ("subnet-2 " ),
881920AvailabilityZone : awssdk .String ("us-west-2c" ),
882921AvailabilityZoneId : awssdk .String ("usw2-az3" ),
883922VpcId : awssdk .String ("vpc-1" ),
923+ Tags : []* ec2sdk.Tag {
924+ {
925+ Key : awssdk .String ("kubernetes.io/cluster/kube-cluster" ),
926+ Value : awssdk .String ("owned" ),
927+ },
928+ },
884929},
885930},
886931},
0 commit comments