22 lines
1.9 KiB
Markdown
22 lines
1.9 KiB
Markdown
# Phase 11 — SonarDesk distribution
|
|
Install patch at ABSDEV root; all paths are relative to the project root. No root-level module duplicates are included.
|
|
|
|
```sh
|
|
php artisan migrate
|
|
composer dump-autoload
|
|
php artisan optimize:clear
|
|
php artisan route:list --path=sonardesk
|
|
php artisan route:list --path=administration/sonardesk/distribution
|
|
```
|
|
Admin: `/administration/sonardesk/distribution`; public: `/sonardesk/downloads`; feed: `/sonardesk/updates/appcast.xml`.
|
|
|
|
Release and download binaries are stored on the private `local` disk in `sonardesk-distribution/`. Ensure the storage directory is persistent across deployments, backed up, and writable by PHP. Do not put it in public webroot. Public download responses use the Laravel controller.
|
|
|
|
The database schema preserves the existing legacy `sonardesk_releases` and `download_products` column names. If those tables already exist, the migration does not recreate them. Legacy files and records are **not** automatically imported; migrate their storage paths into `sonardesk-distribution/` before enabling public downloads.
|
|
|
|
Sparkle appcast includes only stable published releases with a non-empty Sparkle signature. Generate signatures with the official Sparkle signing tool; SHA-256 is not a substitute. Configure the macOS client to point to this feed only after validating compatibility. Existing live appcast and checkout remain unchanged.
|
|
|
|
The patch includes release creation, publication toggle, separate product upload and read-only public details. Editing existing releases, deletion, detailed per-platform requirements, and automatic client-side updates are not implemented here. Uploaded files are limited to 500 MiB by Laravel validation and additionally by PHP/nginx upload limits. Review your server upload limits.
|
|
|
|
Do not apply to production before testing staging, storage persistence, URLs, signatures and permissions. No database data is deleted on rollback.
|