Configure desktop update feed

This commit is contained in:
Курнат Андрей
2026-06-08 21:18:46 +03:00
parent e9aa9f8315
commit 955be5134d
5 changed files with 151 additions and 1 deletions
@@ -1,5 +1,6 @@
param(
[switch]$RequireSigning,
[switch]$VerifyUpdateFeed,
[string]$Root = (Resolve-Path (Join-Path $PSScriptRoot "..")).Path
)
@@ -35,6 +36,10 @@ if ($branding -notmatch 'APPLICATION_DEFAULT_SERVER_URL\s+"https://qsfera\.kusof
Fail "Desktop default server URL must be https://qsfera.kusoft.xyz."
}
if ($branding -notmatch 'APPLICATION_UPDATE_URL\s+"https://qsfera\.kusoft\.xyz/desktop/updates/stable\.xml"') {
Fail "Desktop update feed URL must be https://qsfera.kusoft.xyz/desktop/updates/stable.xml."
}
if ($cmake -notmatch 'option\(WITH_UPDATE_NOTIFICATION\s+"Whether to check for new releases"\s+ON\)') {
Fail "Desktop release builds must keep update notifications enabled by default."
}
@@ -55,6 +60,17 @@ if ($RequireSigning) {
if ([string]::IsNullOrWhiteSpace($env:CRAFT_CODESIGN_CERTIFICATE)) {
Fail "Production Windows tag releases require CRAFT_CODESIGN_CERTIFICATE."
}
$VerifyUpdateFeed = $true
}
if ($VerifyUpdateFeed) {
$feedValidator = Join-Path $PSScriptRoot "validate-desktop-update-feed.ps1"
if (-not (Test-Path -LiteralPath $feedValidator)) {
Fail "Desktop update feed validator was not found: $feedValidator"
}
& $feedValidator -Url "https://qsfera.kusoft.xyz/desktop/updates/stable.xml"
}
Write-Host "QSfera Desktop production release validation passed."