Aggiunge scripts/publish.ps1, equivalente di publish.sh per Windows PowerShell (5.1 e 7), provato su Windows nativo con SDK 10. Il README descrive i tre passi (installare l'SDK, lanciare lo script, trovare i file in dist/) per entrambi i sistemi, il comando dotnet publish senza script e cosa è stato verificato. CLAUDE.md cita i due script e chiede di tenerli allineati. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
21 lines
999 B
PowerShell
21 lines
999 B
PowerShell
# Crea gli eseguibili single-file self-contained in dist\<rid>\.
|
|
# Senza argomenti: win-x64 e linux-x64. Con argomenti: i rid indicati (es. .\scripts\publish.ps1 win-x64).
|
|
# Funziona su Windows PowerShell 5.1 e PowerShell 7 (la compilazione per un altro sistema non richiede quel sistema).
|
|
param([string[]]$Rids = @('win-x64', 'linux-x64'))
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
Set-Location (Split-Path -Parent $PSScriptRoot)
|
|
|
|
foreach ($rid in $Rids) {
|
|
Write-Host "== $rid"
|
|
dotnet publish agent-wiki-ui.csproj -c Release -r $rid --self-contained -p:PublishSingleFile=true -o "dist/$rid" --nologo -v quiet
|
|
if ($LASTEXITCODE -ne 0) { throw "publish fallito per $rid" }
|
|
Get-ChildItem "dist/$rid" -Filter *.pdb -Recurse | Remove-Item # simboli delle librerie native: inutili a chi usa l'app
|
|
}
|
|
|
|
Write-Host ''
|
|
Write-Host 'Eseguibili pronti:'
|
|
foreach ($rid in $Rids) {
|
|
Get-ChildItem "dist/$rid" -File | ForEach-Object { ' dist/{0}/{1} ({2:N0} MB)' -f $rid, $_.Name, ($_.Length / 1MB) }
|
|
}
|