Allow dev manifest selection when using non-releases URLs
This commit is contained in:
@@ -210,21 +210,22 @@ def fetch_manifest_for_channel(channel: str, with_meta: bool = False):
|
||||
try:
|
||||
parts = base_manifest_url.split("/")
|
||||
if "releases" not in parts:
|
||||
if manifest:
|
||||
return (manifest, {"version_dates": version_dates}) if with_meta else manifest
|
||||
mf = fetch_manifest(base_manifest_url)
|
||||
return (mf, {"version_dates": version_dates}) if with_meta else mf
|
||||
idx = parts.index("releases")
|
||||
owner = parts[idx - 2]
|
||||
repo = parts[idx - 1]
|
||||
base = "/".join(parts[:3])
|
||||
api_url = f"{base}/api/v1/repos/{owner}/{repo}/releases"
|
||||
req = urllib.request.Request(api_url)
|
||||
token = _auth_token()
|
||||
if token:
|
||||
req.add_header("Authorization", f"token {token}")
|
||||
resp = urllib.request.urlopen(req, timeout=10)
|
||||
releases = json.loads(resp.read().decode())
|
||||
# No releases API for this URL; keep any fetched manifest and skip API discovery.
|
||||
releases = []
|
||||
if not manifest:
|
||||
manifest = fetch_manifest(base_manifest_url)
|
||||
else:
|
||||
idx = parts.index("releases")
|
||||
owner = parts[idx - 2]
|
||||
repo = parts[idx - 1]
|
||||
base = "/".join(parts[:3])
|
||||
api_url = f"{base}/api/v1/repos/{owner}/{repo}/releases"
|
||||
req = urllib.request.Request(api_url)
|
||||
token = _auth_token()
|
||||
if token:
|
||||
req.add_header("Authorization", f"token {token}")
|
||||
resp = urllib.request.urlopen(req, timeout=10)
|
||||
releases = json.loads(resp.read().decode())
|
||||
|
||||
# Map release versions to published dates so we can surface them later
|
||||
for rel in releases:
|
||||
|
||||
Reference in New Issue
Block a user