Add browser-based system upgrade UI with file-based IPC
API container writes trigger files to a shared volume (data/upgrade/), and a systemd path watcher on the host detects them and runs the upgrade scripts. This avoids giving the container Docker socket access. - Add upgrade-check.sh (git fetch + compare + write status.json) - Add upgrade-watcher.sh (systemd bridge, dispatches check/upgrade) - Add systemd path/service units with placeholder substitution - Modify upgrade.sh with --api-mode flag (progress.json + result.json) - Add API upgrade module (service + routes, SUPER_ADMIN only) - Add System tab to Settings page with version info, changelog, progress steps, and upgrade confirmation modal - Add upgrade watcher installation to config.sh wizard - Add data/upgrade/ shared volume to api service in docker-compose Bunker Admin
This commit is contained in:
13
scripts/systemd/changemaker-upgrade.service
Normal file
13
scripts/systemd/changemaker-upgrade.service
Normal file
@@ -0,0 +1,13 @@
|
||||
[Unit]
|
||||
Description=Changemaker Lite upgrade dispatcher
|
||||
Documentation=https://docs.cmlite.org/docs/admin/services/
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
User=__USER__
|
||||
Group=__USER__
|
||||
WorkingDirectory=__PROJECT_DIR__
|
||||
ExecStart=__PROJECT_DIR__/scripts/upgrade-watcher.sh
|
||||
TimeoutStartSec=900
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
Reference in New Issue
Block a user