Files
aza/AzA march 2026 - Kopie (3)/build_and_test_release.ps1

105 lines
3.4 KiB
PowerShell
Raw Permalink Normal View History

2026-03-25 13:42:48 +01:00
$projectRoot = $PSScriptRoot
$desktopPipeline = Join-Path $projectRoot "build_and_test_desktop.ps1"
$installerBuild = Join-Path $projectRoot "build_installer.ps1"
$signingScript = Join-Path $projectRoot "sign_release.ps1"
$installerTest = Join-Path $projectRoot "test_installer_flow.ps1"
$artifactsScript = Join-Path $projectRoot "build_release_artifacts.ps1"
$publishScript = Join-Path $projectRoot "build_publish_bundle.ps1"
if (-not (Test-Path $desktopPipeline)) {
Write-Error "Desktop-Pipeline nicht gefunden: $desktopPipeline"
exit 1
}
if (-not (Test-Path $installerBuild)) {
Write-Error "Installer-Build-Script nicht gefunden: $installerBuild"
exit 1
}
if (-not (Test-Path $installerTest)) {
Write-Error "Installer-Test-Script nicht gefunden: $installerTest"
exit 1
}
if (-not (Test-Path $artifactsScript)) {
Write-Error "Release-Artefakt-Script nicht gefunden: $artifactsScript"
exit 1
}
if (-not (Test-Path $publishScript)) {
Write-Error "Publish-Bundle-Script nicht gefunden: $publishScript"
exit 1
}
Write-Host "=== AZA Release Pipeline: Desktop Build + Smoke Test ==="
powershell -ExecutionPolicy Bypass -File $desktopPipeline
if ($LASTEXITCODE -ne 0) {
Write-Error "Desktop-Pipeline fehlgeschlagen."
exit 1
}
Write-Host ""
Write-Host "=== AZA Release Pipeline: Installer Build ==="
powershell -ExecutionPolicy Bypass -File $installerBuild
if ($LASTEXITCODE -ne 0) {
Write-Error "Installer-Build fehlgeschlagen."
exit 1
}
Write-Host ""
Write-Host "=== AZA Release Pipeline: Code Signing ==="
if (Test-Path $signingScript) {
if ($env:AZA_SIGN_CERT_THUMBPRINT -or $env:AZA_SIGN_PFX_PATH) {
powershell -ExecutionPolicy Bypass -File $signingScript
if ($LASTEXITCODE -ne 0) {
Write-Error "Code Signing fehlgeschlagen."
exit 1
}
} else {
Write-Host "[SKIP] Kein Signing-Zertifikat konfiguriert — Release wird UNSIGNIERT erstellt."
Write-Host " Setze AZA_SIGN_CERT_THUMBPRINT oder AZA_SIGN_PFX_PATH fuer signierte Releases."
}
} else {
Write-Host "[SKIP] sign_release.ps1 nicht gefunden — Signing uebersprungen."
}
Write-Host ""
Write-Host "=== AZA Release Pipeline: Installer Smoke Test ==="
powershell -ExecutionPolicy Bypass -File $installerTest
if ($LASTEXITCODE -ne 0) {
Write-Error "Installer-Smoke-Test fehlgeschlagen."
exit 1
}
Write-Host ""
Write-Host "=== AZA Release Pipeline: Release Artefakte ==="
powershell -ExecutionPolicy Bypass -File $artifactsScript
if ($LASTEXITCODE -ne 0) {
Write-Error "Release-Artefakt-Report fehlgeschlagen."
exit 1
}
Write-Host ""
Write-Host "=== AZA Release Pipeline: Publish Bundle ==="
powershell -ExecutionPolicy Bypass -File $publishScript
if ($LASTEXITCODE -ne 0) {
Write-Error "Publish-Bundle fehlgeschlagen."
exit 1
}
Write-Host ""
Write-Host "AZA Release Pipeline erfolgreich."
Write-Host "Ergebnis:"
Write-Host "- Desktop Build erfolgreich"
Write-Host "- Release Manifest aktualisiert"
Write-Host "- Desktop Smoke Test erfolgreich"
Write-Host "- Installer Build erfolgreich"
if ($env:AZA_SIGN_CERT_THUMBPRINT -or $env:AZA_SIGN_PFX_PATH) {
Write-Host "- Code Signing erfolgreich"
} else {
Write-Host "- Code Signing uebersprungen (kein Zertifikat)"
}
Write-Host "- Installer Smoke Test erfolgreich"
Write-Host "- Release-Artefakt-Report mit Checksums erfolgreich"
Write-Host "- Publish-Bundle erfolgreich"