@@ -98,6 +98,10 @@ func isInfiniteRedirectRule(port int32, protocol elbv2model.Protocol, rule Rule)
9898 case condition .Field == elbv2model .RuleConditionFieldHostHeader && condition .HostHeaderConfig != nil :
9999 ruleHosts .Insert (condition .HostHeaderConfig .Values ... )
100100 case condition .Field == elbv2model .RuleConditionFieldPathPattern && condition .PathPatternConfig != nil :
101+ // We dont check for infinite rules for regex paths
102+ if len (condition .PathPatternConfig .RegexValues ) > 0 {
103+ return false
104+ }
101105 rulePaths .Insert (condition .PathPatternConfig .Values ... )
102106 }
103107 }
@@ -146,7 +150,11 @@ func isSupersetConditions(lhsConditions []elbv2model.RuleCondition, rhsCondition
146150 case condition .Field == elbv2model .RuleConditionFieldHostHeader && condition .HostHeaderConfig != nil :
147151 lhsHosts .Insert (condition .HostHeaderConfig .Values ... )
148152 case condition .Field == elbv2model .RuleConditionFieldPathPattern && condition .PathPatternConfig != nil :
149- lhsPaths .Insert (condition .PathPatternConfig .Values ... )
153+ if len (condition .PathPatternConfig .RegexValues ) > 0 {
154+ lhsPaths .Insert (condition .PathPatternConfig .RegexValues ... )
155+ } else {
156+ lhsPaths .Insert (condition .PathPatternConfig .Values ... )
157+ }
150158 default :
151159 // if there are any other conditions, then we treat it as not superset.
152160 return false
@@ -160,7 +168,11 @@ func isSupersetConditions(lhsConditions []elbv2model.RuleCondition, rhsCondition
160168 case condition .Field == elbv2model .RuleConditionFieldHostHeader && condition .HostHeaderConfig != nil :
161169 rhsHosts .Insert (condition .HostHeaderConfig .Values ... )
162170 case condition .Field == elbv2model .RuleConditionFieldPathPattern && condition .PathPatternConfig != nil :
163- rhsPaths .Insert (condition .PathPatternConfig .Values ... )
171+ if len (condition .PathPatternConfig .RegexValues ) > 0 {
172+ rhsPaths .Insert (condition .PathPatternConfig .RegexValues ... )
173+ } else {
174+ rhsPaths .Insert (condition .PathPatternConfig .Values ... )
175+ }
164176 }
165177 }
166178
0 commit comments