Files
traefik-selectel/internal/hostparse/zone.go
T
vasyanskandClaude Sonnet 5 273cd54415
Build / Tests (push) Successful in 13s
Build / Build image (push) Failing after 15s
Build / Notify on failure (push) Failing after 0s
feat: traefik-selectel-dns — A-записи Selectel по роутам Traefik + CI сборка образа
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-21 21:50:07 +07:00

18 lines
556 B
Go

package hostparse
import "strings"
// MatchZone возвращает наиболее специфичную зону из zones, которой принадлежит host
// (host равен зоне или является её поддоменом). Зоны и host ожидаются нормализованными.
func MatchZone(host string, zones []string) (string, bool) {
best := ""
for _, z := range zones {
if host == z || strings.HasSuffix(host, "."+z) {
if len(z) > len(best) {
best = z
}
}
}
return best, best != ""
}