diff --git a/.github/workflows/patch-updater34-ui.yml b/.github/workflows/patch-updater34-ui.yml deleted file mode 100644 index c6c496b..0000000 --- a/.github/workflows/patch-updater34-ui.yml +++ /dev/null @@ -1,56 +0,0 @@ -name: Patch Updater 3.4 UI Routing - -on: - push: - branches: - - feature/updater-3.4-lifecycle - -permissions: - contents: write - -concurrency: - group: patch-updater-34-ui - cancel-in-progress: false - -jobs: - patch: - if: ${{ github.actor != 'github-actions[bot]' }} - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v6 - with: - ref: feature/updater-3.4-lifecycle - fetch-depth: 0 - - - name: UI exakt auf Lifecycle 3.4 umstellen - shell: python - run: | - from pathlib import Path - - path = Path('scripts/updater/Vendoo.Updater.UI.ps1') - text = path.read_text(encoding='utf-8-sig') - replacements = { - "$UpdaterVersion = '3.3.0'": "$UpdaterVersion = '3.4.0'", - "$WorkerScript = Join-Path $PSScriptRoot 'Vendoo.Updater.Worker.ps1'": "$WorkerScript = Join-Path $PSScriptRoot 'Vendoo.Updater.Worker34.ps1'", - "@{id='production'; title='Produktion vorbereiten'}, @{id='workspace'; title='Arbeitskopie erstellen'}, @{id='tests'; title='Vollständig testen'},": "@{id='production'; title='Zielzustand erkennen'}, @{id='workspace'; title='Payload sicher vorbereiten'}, @{id='tests'; title='Vollständig testen'},", - "@{id='pullrequest'; title='Pull Request erstellen'}, @{id='merge'; title='Sicher mergen'}, @{id='deploy'; title='Coolify deployen'}, @{id='verify'; title='Produktion bestätigen'}": "@{id='pullrequest'; title='Pull Request abgleichen'}, @{id='merge'; title='Finalen Head prüfen und mergen'}, @{id='deploy'; title='Coolify deployen'}, @{id='verify'; title='Produktion bestätigen'}", - "@{id='production';title='Produktion vorbereiten';state='pending'},@{id='workspace';title='Arbeitskopie erstellen';state='pending'},@{id='tests';title='Vollständig testen';state='pending'},": "@{id='production';title='Zielzustand erkennen';state='pending'},@{id='workspace';title='Payload sicher vorbereiten';state='pending'},@{id='tests';title='Vollständig testen';state='pending'},", - "@{id='pullrequest';title='Pull Request erstellen';state='pending'},@{id='merge';title='Sicher mergen';state='pending'},@{id='deploy';title='Coolify deployen';state='pending'},@{id='verify';title='Produktion bestätigen';state='pending'}": "@{id='pullrequest';title='Pull Request abgleichen';state='pending'},@{id='merge';title='Finalen Head prüfen und mergen';state='pending'},@{id='deploy';title='Coolify deployen';state='pending'},@{id='verify';title='Produktion bestätigen';state='pending'}", - } - for old, new in replacements.items(): - count = text.count(old) - if count != 1: - raise SystemExit(f'Erwartete UI-Vertragsstelle nicht eindeutig: {old!r}, Treffer={count}') - text = text.replace(old, new) - path.write_text(text, encoding='utf-8-sig', newline='\n') - - - name: Patch committen und temporären Workflow entfernen - shell: bash - run: | - set -euo pipefail - rm -f .github/workflows/patch-updater34-ui.yml - git config user.name 'vendoo-updater-build' - git config user.email 'vendoo-updater-build@users.noreply.github.com' - git add --all - git commit -m 'chore: route updater UI to lifecycle 3.4' - git push origin HEAD:feature/updater-3.4-lifecycle diff --git a/scripts/updater/Vendoo.Updater.UI.ps1 b/scripts/updater/Vendoo.Updater.UI.ps1 index 3cce15a..ce0101b 100644 --- a/scripts/updater/Vendoo.Updater.UI.ps1 +++ b/scripts/updater/Vendoo.Updater.UI.ps1 @@ -10,8 +10,8 @@ Add-Type -AssemblyName System.Xaml $PackageRoot = (Resolve-Path -LiteralPath (Join-Path $PSScriptRoot '..\..') -ErrorAction Stop).ProviderPath.TrimEnd([System.IO.Path]::DirectorySeparatorChar,[System.IO.Path]::AltDirectorySeparatorChar) $TargetVersion = '1.43.0' -$UpdaterVersion = '3.3.0' -$WorkerScript = Join-Path $PSScriptRoot 'Vendoo.Updater.Worker.ps1' +$UpdaterVersion = '3.4.0' +$WorkerScript = Join-Path $PSScriptRoot 'Vendoo.Updater.Worker34.ps1' $WorkerHostScript = Join-Path $PSScriptRoot 'Vendoo.Updater.Host.ps1' $LocalRoot = Join-Path $env:LOCALAPPDATA 'Vendoo\Updater' $RuntimeRoot = Join-Path $LocalRoot 'runtime' @@ -158,8 +158,8 @@ foreach ($name in $names) { Set-Variable -Name $name -Value $window.FindName($na $steps = @( @{id='package'; title='Paket prüfen'}, @{id='tools'; title='System prüfen'}, @{id='github'; title='GitHub verbinden'}, - @{id='production'; title='Produktion vorbereiten'}, @{id='workspace'; title='Arbeitskopie erstellen'}, @{id='tests'; title='Vollständig testen'}, - @{id='pullrequest'; title='Pull Request erstellen'}, @{id='merge'; title='Sicher mergen'}, @{id='deploy'; title='Coolify deployen'}, @{id='verify'; title='Produktion bestätigen'} + @{id='production'; title='Zielzustand erkennen'}, @{id='workspace'; title='Payload sicher vorbereiten'}, @{id='tests'; title='Vollständig testen'}, + @{id='pullrequest'; title='Pull Request abgleichen'}, @{id='merge'; title='Finalen Head prüfen und mergen'}, @{id='deploy'; title='Coolify deployen'}, @{id='verify'; title='Produktion bestätigen'} ) $script:StepControls = @{} foreach ($step in $steps) { @@ -206,8 +206,8 @@ function Update-Steps($status) { function Write-InitialStatus { $steps=@( @{id='package';title='Paket prüfen';state='pending'},@{id='tools';title='System prüfen';state='pending'},@{id='github';title='GitHub verbinden';state='pending'}, - @{id='production';title='Produktion vorbereiten';state='pending'},@{id='workspace';title='Arbeitskopie erstellen';state='pending'},@{id='tests';title='Vollständig testen';state='pending'}, - @{id='pullrequest';title='Pull Request erstellen';state='pending'},@{id='merge';title='Sicher mergen';state='pending'},@{id='deploy';title='Coolify deployen';state='pending'},@{id='verify';title='Produktion bestätigen';state='pending'} + @{id='production';title='Zielzustand erkennen';state='pending'},@{id='workspace';title='Payload sicher vorbereiten';state='pending'},@{id='tests';title='Vollständig testen';state='pending'}, + @{id='pullrequest';title='Pull Request abgleichen';state='pending'},@{id='merge';title='Finalen Head prüfen und mergen';state='pending'},@{id='deploy';title='Coolify deployen';state='pending'},@{id='verify';title='Produktion bestätigen';state='pending'} ) $payload=[ordered]@{version=$TargetVersion;updaterVersion=$UpdaterVersion;percent=0;phase='Updater wird vorbereitet';detail='Die überwachte Update-Umgebung wird initialisiert.';state='running';error='';remediation='';updatedAt=(Get-Date).ToString('o');logFile=$script:LogFile;sessionFile=$script:SessionFile;steps=$steps;request=$null}|ConvertTo-Json -Depth 8 [IO.File]::WriteAllText($script:StatusFile,$payload,(New-Object Text.UTF8Encoding($false)))