From ca1162d4e168afc2b4b3f0fbb2eb91c152d9146f Mon Sep 17 00:00:00 2001 From: oppiliappan Date: Tue, 14 Apr 2026 18:02:38 +0100 Subject: [PATCH] knotmirror: add scheme to proxy hosts Signed-off-by: oppiliappan --- knotmirror/xrpc/proxy.go | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/knotmirror/xrpc/proxy.go b/knotmirror/xrpc/proxy.go index f63755f2..a3f7e903 100644 --- a/knotmirror/xrpc/proxy.go +++ b/knotmirror/xrpc/proxy.go @@ -54,7 +54,20 @@ func (x *Xrpc) resolveKnot(ctx context.Context, repoAt syntax.ATURI) (*knotInfo, } }() } - return &knotInfo{baseURL: repo.KnotDomain, didSlashRepo: repo.DidSlashRepo()}, nil + knotURL := repo.KnotDomain + if !strings.Contains(repo.KnotDomain, "://") { + if host, _ := db.GetHost(ctx, x.db, repo.KnotDomain); host != nil { + knotURL = host.URL() + } else { + x.logger.Warn("repo is from unknown knot") + if x.cfg.KnotUseSSL { + knotURL = "https://" + knotURL + } else { + knotURL = "http://" + knotURL + } + } + } + return &knotInfo{baseURL: knotURL, didSlashRepo: repo.DidSlashRepo()}, nil } owner, err := x.resolver.ResolveIdent(ctx, repoAt.Authority().String()) -- 2.51.2