$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"