feat: go proxy

This commit is contained in:
Anonymous 2024-07-06 11:30:15 +08:00
parent c9ebbac425
commit 098b06a58b
2 changed files with 31 additions and 0 deletions

View File

@ -29,6 +29,7 @@ from mirrorsrun.sites.pypi import pypi
from mirrorsrun.sites.torch import torch
from mirrorsrun.sites.docker import dockerhub, k8s, quay, ghcr, nvcr
from mirrorsrun.sites.common import common
from mirrorsrun.sites.goproxy import goproxy
subdomain_mapping = {
"mirrors": common,
@ -40,6 +41,7 @@ subdomain_mapping = {
"ghcr": ghcr,
"quay": quay,
"nvcr": nvcr,
"goproxy": goproxy,
}
logging.basicConfig(

View File

@ -0,0 +1,29 @@
from starlette.requests import Request
from mirrorsrun.proxy.direct import direct_proxy
from starlette.responses import Response
async def goproxy(request: Request):
path = request.url.path
sumdb_prefix = "/sumdb/sum.golang.org"
if path.startswith(sumdb_prefix):
sumdb_path = path.removeprefix(sumdb_prefix)
if sumdb_path.startswith("/supported"):
return Response(
content=b"",
)
target_url = "https://sum.golang.org" + sumdb_path
return await direct_proxy(
request,
target_url,
)
target_url = "https://proxy.golang.org" + path
return await direct_proxy(
request,
target_url,
)