105 lines
3.4 KiB
PowerShell
105 lines
3.4 KiB
PowerShell
|
|
$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"
|