Fix : windows verify crash 2
This commit is contained in:
@@ -161,6 +161,21 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
# Le runner fournit Node 20, alors que le projet exige 22+ et que les
|
||||||
|
# scripts d'installation déposent 22+ sur les VM. Sans cette étape, le
|
||||||
|
# test de fumée validerait le bundle contre une version que la production
|
||||||
|
# n'utilisera jamais.
|
||||||
|
- uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: '22'
|
||||||
|
|
||||||
|
- name: Confirmer la version de Node
|
||||||
|
shell: powershell
|
||||||
|
run: |
|
||||||
|
$major = [int](& node -p 'process.versions.node.split(".")[0]')
|
||||||
|
Write-Host "Node $(& node -v)"
|
||||||
|
if ($major -lt 22) { throw "Node 22+ attendu, trouvé $major" }
|
||||||
|
|
||||||
# Le script d'installation Windows n'est exécutable que sur Windows :
|
# Le script d'installation Windows n'est exécutable que sur Windows :
|
||||||
# ce contrôle de syntaxe est la seule barrière avant qu'il n'atterrisse
|
# ce contrôle de syntaxe est la seule barrière avant qu'il n'atterrisse
|
||||||
# sur une VM de production.
|
# sur une VM de production.
|
||||||
@@ -199,12 +214,19 @@ jobs:
|
|||||||
SERVER_URL: ws://127.0.0.1:1/ws/agent
|
SERVER_URL: ws://127.0.0.1:1/ws/agent
|
||||||
run: |
|
run: |
|
||||||
$out = (& node agent.cjs --check 2>&1 | Out-String)
|
$out = (& node agent.cjs --check 2>&1 | Out-String)
|
||||||
|
$code = $LASTEXITCODE
|
||||||
Write-Host $out
|
Write-Host $out
|
||||||
# Le serveur est injoignable par construction : on valide que le
|
Write-Host "code de sortie du diagnostic : $code"
|
||||||
# diagnostic s'est déroulé, pas son verdict.
|
|
||||||
|
# On valide que le diagnostic s'est déroulé, pas son verdict.
|
||||||
foreach ($marker in @('obs-websocket', 'powershell')) {
|
foreach ($marker in @('obs-websocket', 'powershell')) {
|
||||||
if ($out -notmatch [regex]::Escape($marker)) {
|
if ($out -notmatch [regex]::Escape($marker)) {
|
||||||
throw "Diagnostic incomplet : « $marker » absent de la sortie"
|
throw "Diagnostic incomplet : « $marker » absent de la sortie"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Write-Host 'Bundle fonctionnel sous Windows.'
|
Write-Host 'Bundle fonctionnel sous Windows.'
|
||||||
|
|
||||||
|
# --check sort en 1 : le serveur est injoignable par construction ici.
|
||||||
|
# Sans ce exit explicite, le wrapper PowerShell propage $LASTEXITCODE
|
||||||
|
# et fait échouer l'étape malgré des assertions vertes.
|
||||||
|
exit 0
|
||||||
|
|||||||
Reference in New Issue
Block a user