$projectRoot = "C:\Users\surov\Documents\AZA\backup 24.2.26" $desktopExe = Join-Path $projectRoot "dist\aza_desktop\aza_desktop.exe" $installerExe = Join-Path $projectRoot "dist\installer\aza_desktop_setup.exe" $manifestPath = Join-Path $projectRoot "release\version.json" $reportDir = Join-Path $projectRoot "dist\release_artifacts" $reportPath = Join-Path $reportDir "release_artifacts.json" if (-not (Test-Path $desktopExe)) { Write-Error "Desktop-EXE nicht gefunden: $desktopExe" exit 1 } if (-not (Test-Path $installerExe)) { Write-Error "Installer nicht gefunden: $installerExe" exit 1 } if (-not (Test-Path $manifestPath)) { Write-Error "Release-Manifest nicht gefunden: $manifestPath" exit 1 } if (-not (Test-Path $reportDir)) { New-Item -ItemType Directory -Path $reportDir | Out-Null } $manifest = Get-Content $manifestPath -Raw | ConvertFrom-Json $desktopHash = (Get-FileHash $desktopExe -Algorithm SHA256).Hash $installerHash = (Get-FileHash $installerExe -Algorithm SHA256).Hash $desktopItem = Get-Item $desktopExe $installerItem = Get-Item $installerExe $report = [ordered]@{ generated_at = (Get-Date).ToString("yyyy-MM-ddTHH:mm:ss") version = $manifest.version channel = $manifest.channel release_date = $manifest.release_date files = @( [ordered]@{ type = "desktop_exe" path = $desktopExe filename = $desktopItem.Name size_bytes = $desktopItem.Length sha256 = $desktopHash }, [ordered]@{ type = "installer" path = $installerExe filename = $installerItem.Name size_bytes = $installerItem.Length sha256 = $installerHash } ) } $report | ConvertTo-Json -Depth 5 | Set-Content $reportPath -Encoding UTF8 Write-Host "Release-Artefakt-Report erstellt:" Write-Host $reportPath Write-Host "" Write-Host "Desktop EXE SHA256:" Write-Host $desktopHash Write-Host "" Write-Host "Installer SHA256:" Write-Host $installerHash