test(release): functionele smoke-test voor de Windows-installer (#2314) #2329

Merged
brenno merged 1 commit from fix/windows-installer-smoke into main 2026-10-06 19:47:41 +00:00
Owner

Samenvatting

  • Nieuwe Smoke-test-stap in de mirror-workflow, tussen Package en Publish: stille installatie met /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /CURRENTUSER /DIR=<temp>, exitcheck via Start-Process -Wait -PassThru, pollen op unins000.exe omdat Inno's setup.exe vroeg kan terugkeren.
  • Daarna: payloadcontrole (ocideck.exe, flutter_windows.dll, data\app.so, unins000.exe), HKCU-associatiecontroles (.ocideck → OciDeck.Package, .md OpenWithProgids), een 15 s startproef van ocideck.exe, en stille de-installatie met aantoonbare opruiming (map én ProgID-sleutel weg).
  • packaging/windows/ocideck.iss: PrivilegesRequiredOverridesAllowed krijgt commandline erbij, anders wordt /CURRENTUSER stil genegeerd.
  • pwsh, niet bash — de MSYS-padverklapping van /VERYSILENT (v0.4.7-rc1, 1u52m hang) geldt hier net zo.
  • test/windows_packaging_test.dart: vier structurele tests op volgorde vóór publish, stille per-gebruiker-installatie, payload/associatie/start/uninstall-checks, en de commandline-override.

Verificatiegrens

De smoke draait pas echt op de windows-latest-runner bij een v*-tag — lokaal is geen Windows met Inno beschikbaar. De step volgt het bewezen patroon van de Inno-installatiestap erboven (pwsh + -Wait + exitcheck). Restrisico: de Flutter-app onder het headless display van de runner — mocht die om een omgevingselement (geen GPU) wegvallen, dan faalt de stap vóór publicatie, nooit stil erna. make check is volledig groen.

Generated with Devin

## Samenvatting - Nieuwe `Smoke-test`-stap in de mirror-workflow, tussen `Package` en `Publish`: stille installatie met `/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /CURRENTUSER /DIR=<temp>`, exitcheck via `Start-Process -Wait -PassThru`, pollen op `unins000.exe` omdat Inno's setup.exe vroeg kan terugkeren. - Daarna: payloadcontrole (`ocideck.exe`, `flutter_windows.dll`, `data\app.so`, `unins000.exe`), HKCU-associatiecontroles (`.ocideck` → `OciDeck.Package`, `.md` OpenWithProgids), een 15 s startproef van `ocideck.exe`, en stille de-installatie met aantoonbare opruiming (map én ProgID-sleutel weg). - `packaging/windows/ocideck.iss`: `PrivilegesRequiredOverridesAllowed` krijgt `commandline` erbij, anders wordt `/CURRENTUSER` stil genegeerd. - pwsh, niet bash — de MSYS-padverklapping van `/VERYSILENT` (v0.4.7-rc1, 1u52m hang) geldt hier net zo. - `test/windows_packaging_test.dart`: vier structurele tests op volgorde vóór publish, stille per-gebruiker-installatie, payload/associatie/start/uninstall-checks, en de `commandline`-override. ## Verificatiegrens De smoke draait pas echt op de `windows-latest`-runner bij een `v*`-tag — lokaal is geen Windows met Inno beschikbaar. De step volgt het bewezen patroon van de Inno-installatiestap erboven (pwsh + `-Wait` + exitcheck). Restrisico: de Flutter-app onder het headless display van de runner — mocht die om een omgevingselement (geen GPU) wegvallen, dan faalt de stap vóór publicatie, nooit stil erna. `make check` is volledig groen. Generated with [Devin](https://devin.ai)
De mirror compileerde de Inno Setup-installer en publiceerde hem blind:
installatie, associaties, starten en verwijderen waren alleen handmatig
beproefd. De job installeert de setup nu stil per gebruiker (/CURRENTUSER,
daarvoor krijgt PrivilegesRequiredOverridesAllowed 'commandline' erbij) in
een schone tijdelijke map, toetst payload en HKCU-associaties, start
ocideck.exe, en verwijdert alles weer — allemaal vóór de publish-stap.
brenno merged commit ceefa851fd into main 2026-10-06 19:47:41 +00:00
Sign in to join this conversation.
No description provided.