release(v1.7.20-alpha): stop auto-apply scheduler killing the service
All checks were successful
Build Archipelago ISO (dev) / build-iso (push) Successful in 41m2s
All checks were successful
Build Archipelago ISO (dev) / build-iso (push) Successful in 41m2s
The 3AM auto-update path called std::process::exit(0) immediately after apply_update returned. apply_update had already spawned a 2s- delayed systemctl restart, but exit(0) killed the runtime before that spawned task could run — and the unit's Restart=on-failure does not trigger on a clean exit 0, so the service stayed dead until someone SSH'd in and started it manually (.253 hit this today). Scheduler now returns from the task without killing the process; apply_update's existing restart path (same one the UI's Install Update button uses) brings the new version up cleanly. Also hardens the ISO CI: the AIUI inclusion step now falls back to extracting from the newest release tarball if the runner's cached /opt/archipelago/web-ui/aiui path is missing, so a reprovisioned runner can't silently ship a frontend tarball without AIUI. The ISO build step also sanity-checks the binary exists before invoking the builder. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,27 +1,26 @@
|
||||
{
|
||||
"version": "1.7.19-alpha",
|
||||
"version": "1.7.20-alpha",
|
||||
"release_date": "2026-04-21",
|
||||
"changelog": [
|
||||
"Your node no longer offers a version you've already passed as an 'available update'. If you sideload or skip a release, any stored pointer to an older version is dropped on next restart — the System Update page only offers genuinely newer releases.",
|
||||
"Version comparison is now numeric rather than alphabetic. 1.7.10 correctly outranks 1.7.9 (the old string-order would've got this backwards once patch numbers hit double digits), so update prompts stay accurate past the nines.",
|
||||
"A stale manifest from a slow cache or proxy can no longer downgrade your node. If the manifest reports a version equal to or behind what's running, the node treats that as 'up to date' rather than offering the older version as an update."
|
||||
"Fixed a critical bug where nodes on 'Check & Apply Daily' could end up offline after their nightly update. The scheduler was killing the service a moment too early, before the built-in restart handler could bring the new version back up — leaving the node dead until someone SSH'd in. The scheduler now uses the same restart path as the 'Install Update' button, so auto-applied updates come back online on their own.",
|
||||
"Applies automatically — no action needed on your end beyond taking this update."
|
||||
],
|
||||
"components": [
|
||||
{
|
||||
"name": "archipelago",
|
||||
"current_version": "1.7.18-alpha",
|
||||
"new_version": "1.7.19-alpha",
|
||||
"download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.19-alpha/archipelago",
|
||||
"sha256": "c6ffb65ea999c5212e0f93201a9ad77941810c00ea91dfb7397a07358a8a464e",
|
||||
"size_bytes": 40648312
|
||||
"current_version": "1.7.19-alpha",
|
||||
"new_version": "1.7.20-alpha",
|
||||
"download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.20-alpha/archipelago",
|
||||
"sha256": "bf4f8b91b021cad445a868f454707e0fa005446f755604f8c3e072bb7a059e6f",
|
||||
"size_bytes": 40640016
|
||||
},
|
||||
{
|
||||
"name": "archipelago-frontend-1.7.19-alpha.tar.gz",
|
||||
"current_version": "1.7.18-alpha",
|
||||
"new_version": "1.7.19-alpha",
|
||||
"download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.19-alpha/archipelago-frontend-1.7.19-alpha.tar.gz",
|
||||
"sha256": "5f70534a3df7012d20ccd8b4134a84a197a082910a9cd45774af249eae9f8d6c",
|
||||
"size_bytes": 162081700
|
||||
"name": "archipelago-frontend-1.7.20-alpha.tar.gz",
|
||||
"current_version": "1.7.19-alpha",
|
||||
"new_version": "1.7.20-alpha",
|
||||
"download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.20-alpha/archipelago-frontend-1.7.20-alpha.tar.gz",
|
||||
"sha256": "a82f187b597c51e5f3d8753529914651ab2d8e8bb3ad9c36d287b335e4d386a9",
|
||||
"size_bytes": 162082209
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user