mirror of
https://github.com/PlaneQuery/OpenAirframes.git
synced 2026-06-08 06:03:55 +02:00
end of year check
This commit is contained in:
@@ -76,13 +76,9 @@ def timeout_handler(signum, frame):
|
|||||||
raise DownloadTimeoutException("Download timed out after 40 seconds")
|
raise DownloadTimeoutException("Download timed out after 40 seconds")
|
||||||
|
|
||||||
|
|
||||||
def fetch_releases(version_date: str) -> list:
|
def _fetch_releases_from_repo(year: str, version_date: str) -> list:
|
||||||
"""Fetch GitHub releases for a given version date from adsblol."""
|
"""Fetch GitHub releases for a given version date from a specific year's adsblol repo."""
|
||||||
year = version_date.split('.')[0][1:]
|
|
||||||
if version_date == "v2024.12.31":
|
|
||||||
year = "2025"
|
|
||||||
BASE_URL = f"https://api.github.com/repos/adsblol/globe_history_{year}/releases"
|
BASE_URL = f"https://api.github.com/repos/adsblol/globe_history_{year}/releases"
|
||||||
# Match both normal and tmp releases
|
|
||||||
PATTERN = rf"^{re.escape(version_date)}-planes-readsb-prod-\d+(tmp)?$"
|
PATTERN = rf"^{re.escape(version_date)}-planes-readsb-prod-\d+(tmp)?$"
|
||||||
releases = []
|
releases = []
|
||||||
page = 1
|
page = 1
|
||||||
@@ -123,6 +119,25 @@ def fetch_releases(version_date: str) -> list:
|
|||||||
return releases
|
return releases
|
||||||
|
|
||||||
|
|
||||||
|
def fetch_releases(version_date: str) -> list:
|
||||||
|
"""Fetch GitHub releases for a given version date from adsblol.
|
||||||
|
|
||||||
|
For Dec 31 dates, if no releases are found in the current year's repo,
|
||||||
|
also checks the next year's repo (adsblol sometimes publishes Dec 31
|
||||||
|
data in the following year's repository).
|
||||||
|
"""
|
||||||
|
year = version_date.split('.')[0][1:]
|
||||||
|
releases = _fetch_releases_from_repo(year, version_date)
|
||||||
|
|
||||||
|
# For last day of year, also check next year's repo if nothing found
|
||||||
|
if not releases and version_date.endswith(".12.31"):
|
||||||
|
next_year = str(int(year) + 1)
|
||||||
|
print(f"No releases found for {version_date} in {year} repo, checking {next_year} repo...")
|
||||||
|
releases = _fetch_releases_from_repo(next_year, version_date)
|
||||||
|
|
||||||
|
return releases
|
||||||
|
|
||||||
|
|
||||||
def download_asset(asset_url: str, file_path: str) -> bool:
|
def download_asset(asset_url: str, file_path: str) -> bool:
|
||||||
"""Download a single release asset."""
|
"""Download a single release asset."""
|
||||||
os.makedirs(os.path.dirname(file_path) or OUTPUT_DIR, exist_ok=True)
|
os.makedirs(os.path.dirname(file_path) or OUTPUT_DIR, exist_ok=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user