29 lines
1.5 KiB
Markdown
29 lines
1.5 KiB
Markdown
# SonarDesk release distribution
|
|
|
|
The website now owns SonarDesk release distribution from the admin area.
|
|
|
|
## Deploy
|
|
|
|
1. Deploy the code normally.
|
|
2. Run `php artisan migrate --force`.
|
|
3. Ensure Laravel's `storage` directory remains shared/persistent between releases (the existing Deployer configuration already shares `storage`).
|
|
4. Ensure the web/PHP upload limits are large enough for the DMG. For a 1 GB application limit, configure nginx `client_max_body_size` and PHP `upload_max_filesize` / `post_max_size` accordingly.
|
|
|
|
## Publishing a build
|
|
|
|
Open **Admin → Releases → New release**. Enter the marketing version, build number, minimum macOS version and release notes, upload the signed/notarized DMG or ZIP, and paste the Sparkle EdDSA signature when Sparkle is enabled. Save as a draft until the package is ready, then publish it.
|
|
|
|
Published stable releases automatically feed:
|
|
|
|
- `/release` — customer-facing distribution centre
|
|
- `/download` — latest stable package
|
|
- `/updates/appcast.xml` — Sparkle feed
|
|
- the licence portal download call-to-action
|
|
- licence delivery email download call-to-action
|
|
|
|
The SHA-256 checksum and file size are calculated on upload. Download counts are tracked per release.
|
|
|
|
## Sparkle
|
|
|
|
Generate the EdDSA signature with the Sparkle release tooling and paste it into the release editor. Configure the macOS app's feed URL to the production `/updates/appcast.xml` endpoint. Do not place Sparkle private signing keys on the public web server.
|