Skip to content

Commit b55bcf0

Browse files
committed
Fix multi-route Traefik config generation
- Unique router names for multiple routes per service - Router service reference uses service name, not router
1 parent 6673f37 commit b55bcf0

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

cmd/service.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -868,16 +868,19 @@ func generateRoutesYml(services map[string]velocity.Service, domain string, allo
868868
// Routers
869869
sb.WriteString(" routers:\n")
870870
for _, e := range entries {
871-
for _, route := range e.service.Routes {
871+
for ri, route := range e.service.Routes {
872872
routerName := e.name
873+
if ri > 0 {
874+
routerName = fmt.Sprintf("%s-%d", e.name, ri)
875+
}
873876
rule := fmt.Sprintf("Host(`%s`)", domain)
874877
if route.Path != "" {
875878
rule = fmt.Sprintf("Host(`%s`) && PathPrefix(`%s`)", domain, route.Path)
876879
}
877880

878881
sb.WriteString(fmt.Sprintf(" %s:\n", routerName))
879882
sb.WriteString(fmt.Sprintf(" rule: \"%s\"\n", rule))
880-
sb.WriteString(fmt.Sprintf(" service: %s\n", routerName))
883+
sb.WriteString(fmt.Sprintf(" service: %s\n", e.name))
881884
sb.WriteString(" entryPoints:\n")
882885
sb.WriteString(" - websecure\n")
883886
sb.WriteString(" tls:\n")

0 commit comments

Comments
 (0)