Files
PS_Launcher/server/manifest/versions.json
j.foucher b8ac2488fe sign-manifest: derive ZIP filename from manifest URL, tolerant fallback
Previously the script assumed every ZIP was named proserve-{version}.zip.
That broke when an upload was named "Proserve v1.4.6.zip" (with space and
capital P, the natural name produced by Compress-Archive on a Proserve
v1.4.6/ folder).

Now the script:
1. Reads download.url from each version entry, takes basename().
2. If that exact file is missing, falls back to a glob *{version}*.zip
   in builds/ — succeeds if exactly one match.
3. Logs a clear message in either case.

Also fix manifest example hostname (www.exemple-asterion.com → asterionvr.com).
2026-05-01 09:17:26 +02:00

39 lines
1.2 KiB
JSON

{
"schemaVersion": 1,
"product": "PROSERVE_UE",
"latest": "1.4.6",
"publishedAt": "2026-04-29T10:15:00Z",
"minLauncherVersion": "1.0.0",
"versions": [
{
"version": "1.4.6",
"releasedAt": "2026-04-29T10:00:00Z",
"executable": "PROSERVE_UE_5_5.exe",
"installFolderTemplate": "Proserve v{version}",
"download": {
"url": "https://asterionvr.com/PS_Launcher/builds/proserve-1.4.6.zip",
"sizeBytes": 0,
"sha256": "REPLACE_AFTER_BUILD"
},
"releaseNotesUrl": "https://asterionvr.com/PS_Launcher/api/releasenotes/1.4.6",
"minLicenseDate": "2025-01-01",
"availableForDownload": true
},
{
"version": "1.4.5",
"releasedAt": "2026-04-15T10:00:00Z",
"executable": "PROSERVE_UE_5_5.exe",
"installFolderTemplate": "Proserve v{version}",
"download": {
"url": "https://asterionvr.com/PS_Launcher/builds/proserve-1.4.5.zip",
"sizeBytes": 0,
"sha256": "REPLACE_AFTER_BUILD"
},
"releaseNotesUrl": "https://asterionvr.com/PS_Launcher/api/releasenotes/1.4.5",
"minLicenseDate": "2024-06-01",
"availableForDownload": true
}
],
"signature": null
}