7a4c516a20
- 后端:新增 CloudSync 认证/权限/端点/服务与 DTO - 数据:新增用户/会话/安全策略实体与 EF Core migrations - 前端:新增云同步设置 UI、客户端与本地存储;Vite 支持 maui 构建输出到 wwwroot - 桌面端:新增 Avalonia 项目、内置 WebServer、托盘与 Windows 全局热键 - 发布/构建:新增 Windows/Linux 发布脚本与统一入口;调整 MAUI 资源与安装包配置 - 文档:同步更新 README/docs 与协作规则
64 lines
1.5 KiB
PowerShell
64 lines
1.5 KiB
PowerShell
param(
|
|
[switch]$Windows,
|
|
|
|
[switch]$Linux,
|
|
|
|
[string[]]$LinuxRuntimes = @("linux-x64", "linux-arm64"),
|
|
|
|
[switch]$LinuxSelfContained,
|
|
|
|
[string]$Configuration = "Release",
|
|
|
|
[switch]$SkipWindowsInnoSetup,
|
|
|
|
[switch]$SkipWindowsVersionBump
|
|
)
|
|
|
|
$ErrorActionPreference = "Stop"
|
|
|
|
$ScriptPath = $PSScriptRoot
|
|
|
|
$publishWindowsScript = Join-Path $ScriptPath "publish-windows.ps1"
|
|
$publishLinuxScript = Join-Path $ScriptPath "publish-linux.ps1"
|
|
|
|
$shouldPublishWindows = $Windows.IsPresent
|
|
$shouldPublishLinux = $Linux.IsPresent
|
|
if (!$shouldPublishWindows -and !$shouldPublishLinux) {
|
|
$shouldPublishWindows = $true
|
|
$shouldPublishLinux = $true
|
|
}
|
|
|
|
if ($shouldPublishWindows) {
|
|
if (!(Test-Path $publishWindowsScript)) {
|
|
Write-Error "publish-windows.ps1 not found: $publishWindowsScript"
|
|
exit 1
|
|
}
|
|
|
|
& $publishWindowsScript `
|
|
-Configuration $Configuration `
|
|
-SkipInnoSetup:$SkipWindowsInnoSetup `
|
|
-SkipVersionBump:$SkipWindowsVersionBump
|
|
|
|
if ($LASTEXITCODE -ne 0) {
|
|
exit $LASTEXITCODE
|
|
}
|
|
}
|
|
|
|
if ($shouldPublishLinux) {
|
|
if (!(Test-Path $publishLinuxScript)) {
|
|
Write-Error "publish-linux.ps1 not found: $publishLinuxScript"
|
|
exit 1
|
|
}
|
|
|
|
foreach ($rid in $LinuxRuntimes) {
|
|
& $publishLinuxScript `
|
|
-RuntimeIdentifier $rid `
|
|
-SelfContained:$LinuxSelfContained `
|
|
-Configuration $Configuration
|
|
|
|
if ($LASTEXITCODE -ne 0) {
|
|
exit $LASTEXITCODE
|
|
}
|
|
}
|
|
}
|