Compare commits

...

1 commit

Author SHA1 Message Date
65de2adc47 Update main.go
All checks were successful
Build Go Binary / build (push) Successful in 32s
2025-08-16 07:53:49 +02:00

37
main.go
View file

@ -188,9 +188,6 @@ func main() {
key := svc.Metadata.Namespace + "/" + svc.Metadata.Name
ep, found := endpointMap[key]
if !found || len(ep.Subsets) == 0 {
continue
}
b := Backend{
Name: "SRV_" + strings.ReplaceAll(svc.Metadata.Name, " ", "-"),
@ -210,8 +207,6 @@ func main() {
}
if val, ok := ann["haproxy/health-check"]; ok && val != "" {
b.HealthCheck = val
} else {
b.HealthCheck = ""
}
if val, ok := ann["haproxy/server-options"]; ok && val != "" {
b.ServerOptions = val
@ -225,30 +220,36 @@ func main() {
}
servers := []BackendServer{}
for _, subset := range ep.Subsets {
for _, addr := range subset.Addresses {
for _, port := range subset.Ports {
if targetPort != 0 && port.Port != targetPort {
continue
if found && len(ep.Subsets) > 0 {
for _, subset := range ep.Subsets {
for _, addr := range subset.Addresses {
for _, port := range subset.Ports {
if targetPort != 0 && port.Port != targetPort {
continue
}
cookie := hashString(fmt.Sprintf("%s-%s-%d", svc.Metadata.Name, addr.IP, port.Port))
serverName := fmt.Sprintf("%s_%d", svc.Metadata.Name, cookie)
servers = append(servers, BackendServer{
Name: serverName,
Address: addr.IP,
Port: port.Port,
Cookie: cookie,
})
}
cookie := hashString(fmt.Sprintf("%s-%s-%d", svc.Metadata.Name, addr.IP, port.Port))
serverName := fmt.Sprintf("%s_%d", svc.Metadata.Name, cookie)
servers = append(servers, BackendServer{
Name: serverName,
Address: addr.IP,
Port: port.Port,
Cookie: cookie,
})
}
}
}
b.Servers = servers
backends = append(backends, b)
}
tmplAbsPath, err := filepath.Abs(templatePath)
if err != nil {
log.Fatalf("Failed to get absolute path: %v", err)
}
tmpl, err := getTemplate(tmplAbsPath)
if err != nil {
log.Fatalf("Failed to parse template: %v", err)