-
Notifications
You must be signed in to change notification settings - Fork 0
Updating Herald
⚠️ On a version before 1.26.0? The in-app Update button won't get you past this one version boundary — see Upgrading from before 1.26.0 below before you try it.
The installed version is shown in the web UI's Global Settings tab, with a Check for Updates button that compares it against the latest main release on GitHub. Herald also checks automatically once a day in the background; if a newer release is available, an "Update available" badge appears in the header — clicking it jumps to the Global Settings tab.
An Update Herald button runs the actual update without needing to SSH in:
- Always installs from
main, neverdevelop— the same tested release channel as a fresh install - Downloads and runs the same
install.sha manual update would - Restarts the service, and verifies it actually comes back up on the new version (a real post-restart health check — service active and version file matches — not just "the restart command didn't error") before reporting success
- Runs in the background so the page doesn't hang waiting on it; a live progress panel shows each stage (backing up → downloading → installing → restarting → done)
- The button is disabled server-side (not just in the browser) while an update is genuinely in flight, so a second click — or a second browser tab — can't start a duplicate update on top of it
- Backs up your current config before making any changes — see Backup & Restore
A brief service restart (a few seconds) happens as part of any update — expected, not an error.
Same commands install.sh itself uses, if you'd rather update over SSH:
curl -fsSL -H "Cache-Control: no-cache" https://raw.githubusercontent.com/N6LKA/AllStar-Herald/main/install.sh | sudo bashSee Getting Started for what the installer does — running it again over an existing install is how both the web UI's Update button and a manual update work under the hood.
1.26.0 renamed the GitHub repo from ASL3-Herald to AllStar-Herald (issue #47) and scrubbed the old asl3-herald naming out of every path/file. GitHub redirects the old repo URL automatically, but its archive/tarball download always names the extracted folder after the current repo name — even when requested through the old URL. Any install older than 1.26.0 has the old folder name (ASL3-Herald-main) hardcoded into its self-update step, so that step can't find install.sh inside the downloaded tarball. The update silently does nothing, and the Update button (or the daily background check) leaves you on your old version with no clear error.
This can't be fixed by clicking Update — the broken logic is baked into the code that's already running on your system. One-time fix, run manually over SSH:
curl -fsSL -H "Cache-Control: no-cache" https://raw.githubusercontent.com/N6LKA/AllStar-Herald/main/install.sh | sudo bashThis bypasses the broken tarball-extraction step entirely and installs 1.26.0 directly. After that one-time manual run, the in-app Update button works normally again — this only affects crossing this specific version boundary.
Also check for stale references to the old asl3-herald paths in places install.sh doesn't manage:
-
idrecordinginrpt.conf, if you've set up the Node ID Generator — this line is entirely your own manual edit to Asterisk's own config, so it's never touched by install.sh. If it still reads/etc/asterisk/scripts/asl3-herald/node-id/node-id, update it to/etc/asterisk/scripts/herald/node-id/node-idand runsudo asterisk -rx "rpt reload"(or restart Asterisk if that doesn't pick it up). -
ASL3-SkywarnPlus-NG-Bridge, if you use it for a weather panel on Allmon3/Supermon — its
Weather.JsonPathneeds to point at Herald's newweather.jsonlocation. Fixed automatically if you update the bridge itself (1.26.0+ of the bridge migrates this the same way Herald's own installer does); otherwise edit/etc/asl3-swp-ng-bridge/config.yamlby hand and re-run the bridge once. - Any other script or program you've pointed at a Herald-managed file (announcement WAVs,
weather.json, etc.) using its old/etc/asterisk/scripts/asl3-herald/...path will need the same one-time path update — Herald's own migration only rewrites what it manages directly (its own config and integration links), not third-party references to it.