update updater

This commit is contained in:
Frank Harris 2026-06-06 12:21:56 -05:00
parent cc5f7bb90c
commit d8c66c4c49
2 changed files with 31 additions and 8 deletions

View file

@ -22,7 +22,7 @@ The update page is intentionally simple:
The admin page stores these settings in the Panel settings table:
- `gsp_update_repo_url`
- `gsp_update_repo_url` for the repository source. This may be a Git URL or a safe absolute local repository path.
- `gsp_update_branch`
- `gsp_update_repo_root`
- `gsp_update_panel_path`
@ -30,7 +30,7 @@ The admin page stores these settings in the Panel settings table:
Defaults:
- Repository URL: `http://forge.runlevelsystems.com/dev/GSP.git`
- Repository URL / Path: `http://forge.runlevelsystems.com/dev/GSP.git`
- Branch: `Panel-unstable`
- Repository Root: `/var/www/html/GSP`
- Panel Path: `/var/www/html/GSP/Panel`
@ -48,7 +48,7 @@ Important implementation note:
2. Validate repository URL, branch, repo root, and Panel path.
3. Run preflight against the configured paths.
4. Create a backup when enabled.
5. Clone the configured repository branch into a temporary checkout.
5. Clone the configured repository source and branch into a temporary checkout.
6. Sync files into the configured root/Panel paths.
7. Preserve `Panel/includes/config.inc.php`.
8. Run module updates/post-update hooks.
@ -64,3 +64,10 @@ The old repeated SSL vhost disable buttons are not part of the primary update pa
- The updater still contains legacy GitHub release helper code that is no longer rendered by the simplified primary UI.
- Real production testing should confirm file ownership and web-server permissions on `/var/www/html/GSP`.
## Repair Notes
- The update page fatal `Call to undefined function gsp_update_settings()` means the deployed `Panel/modules/administration/panel_update.php` is missing the top-level helper or is not the current repository copy.
- `Panel/modules/update/update.php` only loads `Panel/modules/administration/panel_update.php` and calls `gsp_panel_update_section()`.
- The configured update action uses `git clone --depth 1 --branch <configured branch> <configured repository source> <temporary checkout>`.
- Clone failures are logged to `logs/update_trace.log` with the configured repository source and branch.