Skip to content

Commit 4ec1086

Browse files
committed
Fix rule optimizer incorrectly removing regex-based listener rules
1 parent 906cd93 commit 4ec1086

4 files changed

Lines changed: 1006 additions & 4 deletions

File tree

.go-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.25.6
1+
1.25.7

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module sigs.k8s.io/aws-load-balancer-controller
22

3-
go 1.25.6
3+
go 1.25.7
44

55
require (
66
github.com/aws/aws-sdk-go-v2 v1.40.0

pkg/ingress/rule_optimizer.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,11 @@ func isSupersetConditions(lhsConditions []elbv2model.RuleCondition, rhsCondition
146146
case condition.Field == elbv2model.RuleConditionFieldHostHeader && condition.HostHeaderConfig != nil:
147147
lhsHosts.Insert(condition.HostHeaderConfig.Values...)
148148
case condition.Field == elbv2model.RuleConditionFieldPathPattern && condition.PathPatternConfig != nil:
149-
lhsPaths.Insert(condition.PathPatternConfig.Values...)
149+
if len(condition.PathPatternConfig.RegexValues) > 0 {
150+
lhsPaths.Insert(condition.PathPatternConfig.RegexValues...)
151+
} else {
152+
lhsPaths.Insert(condition.PathPatternConfig.Values...)
153+
}
150154
default:
151155
// if there are any other conditions, then we treat it as not superset.
152156
return false
@@ -160,7 +164,11 @@ func isSupersetConditions(lhsConditions []elbv2model.RuleCondition, rhsCondition
160164
case condition.Field == elbv2model.RuleConditionFieldHostHeader && condition.HostHeaderConfig != nil:
161165
rhsHosts.Insert(condition.HostHeaderConfig.Values...)
162166
case condition.Field == elbv2model.RuleConditionFieldPathPattern && condition.PathPatternConfig != nil:
163-
rhsPaths.Insert(condition.PathPatternConfig.Values...)
167+
if len(condition.PathPatternConfig.RegexValues) > 0 {
168+
rhsPaths.Insert(condition.PathPatternConfig.RegexValues...)
169+
} else {
170+
rhsPaths.Insert(condition.PathPatternConfig.Values...)
171+
}
164172
}
165173
}
166174

0 commit comments

Comments
 (0)