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:
|
try:
|
||||||
parts = base_manifest_url.split("/")
|
parts = base_manifest_url.split("/")
|
||||||
if "releases" not in parts:
|
if "releases" not in parts:
|
||||||
if manifest:
|
# No releases API for this URL; keep any fetched manifest and skip API discovery.
|
||||||
return (manifest, {"version_dates": version_dates}) if with_meta else manifest
|
releases = []
|
||||||
mf = fetch_manifest(base_manifest_url)
|
if not manifest:
|
||||||
return (mf, {"version_dates": version_dates}) if with_meta else mf
|
manifest = fetch_manifest(base_manifest_url)
|
||||||
idx = parts.index("releases")
|
else:
|
||||||
owner = parts[idx - 2]
|
idx = parts.index("releases")
|
||||||
repo = parts[idx - 1]
|
owner = parts[idx - 2]
|
||||||
base = "/".join(parts[:3])
|
repo = parts[idx - 1]
|
||||||
api_url = f"{base}/api/v1/repos/{owner}/{repo}/releases"
|
base = "/".join(parts[:3])
|
||||||
req = urllib.request.Request(api_url)
|
api_url = f"{base}/api/v1/repos/{owner}/{repo}/releases"
|
||||||
token = _auth_token()
|
req = urllib.request.Request(api_url)
|
||||||
if token:
|
token = _auth_token()
|
||||||
req.add_header("Authorization", f"token {token}")
|
if token:
|
||||||
resp = urllib.request.urlopen(req, timeout=10)
|
req.add_header("Authorization", f"token {token}")
|
||||||
releases = json.loads(resp.read().decode())
|
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
|
# Map release versions to published dates so we can surface them later
|
||||||
for rel in releases:
|
for rel in releases:
|
||||||
|
|||||||
Reference in New Issue
Block a user