diff --git a/src/upstreams.go b/src/upstreams.go index c05e645..dd53c83 100644 --- a/src/upstreams.go +++ b/src/upstreams.go @@ -36,15 +36,19 @@ func ReverseProxyUpstreamList(w http.ResponseWriter, r *http.Request) { inactiveUpstreams := targetEndpoint.InactiveOrigins slices.SortFunc(activeUpstreams, func(i, j *loadbalance.Upstream) int { if i.Weight != j.Weight { + // sort by weight DESC return cmp.Compare(j.Weight, i.Weight) } + // sort by origin ASC return cmp.Compare(i.OriginIpOrDomain, j.OriginIpOrDomain) }) slices.SortFunc(inactiveUpstreams, func(i, j *loadbalance.Upstream) int { if i.Weight != j.Weight { + // sort by weight DESC return cmp.Compare(j.Weight, i.Weight) } + // sort by origin ASC return cmp.Compare(i.OriginIpOrDomain, j.OriginIpOrDomain) })