diff --git a/scripts/generate-base-files-info-json.py b/scripts/generate-base-files-info-json.py index ec4930666a..e1b62c67df 100755 --- a/scripts/generate-base-files-info-json.py +++ b/scripts/generate-base-files-info-json.py @@ -281,7 +281,15 @@ def synthesize_binary_package_filename(package_info): releases += [ 'ubuntu/jammy', 'ubuntu/noble', 'ubuntu/plucky', 'ubuntu/questing', 'ubuntu/resolute' ] # Add -updates repos for LTS releases to get latest security updates releases += [ 'ubuntu/jammy-updates', 'ubuntu/noble-updates' ] - release_hash = {} + # Seed from the currently-published index (wanted releases only) so a transient fetch failure keeps the prior entry + wanted_releases = {wanted.split('/', 1)[1] for wanted in releases} + try: + response = requests.get("https://github.armbian.com/base-files.json", timeout=30) + response.raise_for_status() + published = response.json() + except (requests.exceptions.RequestException, ValueError): + published = {} + release_hash = {name: info for name, info in published.items() if name in wanted_releases} for release in releases: distro, release = release.split('/') packages = {}