diff --git a/discovery/kubernetes/ingress.go b/discovery/kubernetes/ingress.go index 0b27c116b5..070785f29f 100644 --- a/discovery/kubernetes/ingress.go +++ b/discovery/kubernetes/ingress.go @@ -220,9 +220,8 @@ func (i *Ingress) buildIngress(ingress ingressAdaptor) *targetgroup.Group { } // matchesHostnamePattern returns true if the host matches a wildcard DNS -// pattern or pattern and host are equal +// pattern or pattern and host are equal. func matchesHostnamePattern(pattern, host string) bool { - // check for exact match if pattern == host { return true } @@ -230,13 +229,13 @@ func matchesHostnamePattern(pattern, host string) bool { patternParts := strings.Split(pattern, ".") hostParts := strings.Split(host, ".") - // if they are not equal, we cna check if we need to match - // on a wildcard or else give up + // If the first element of the pattern is not a wildcard, give up. if len(patternParts) == 0 || patternParts[0] != "*" { return false } - // to get a valid wildcard match the parts will need to be the same length + // A wildcard match require the pattern to have the same length as the host + // path. if len(patternParts) != len(hostParts) { return false } diff --git a/discovery/kubernetes/ingress_test.go b/discovery/kubernetes/ingress_test.go index a8e6a41ad5..81055b5c28 100644 --- a/discovery/kubernetes/ingress_test.go +++ b/discovery/kubernetes/ingress_test.go @@ -19,11 +19,11 @@ import ( "testing" "github.com/prometheus/common/model" - "github.com/prometheus/prometheus/discovery/targetgroup" - v1 "k8s.io/api/networking/v1" "k8s.io/api/networking/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + + "github.com/prometheus/prometheus/discovery/targetgroup" ) type TLSMode int