Installer meldete Fehler, wo keine waren

Zwei Fehler, beide in scripts/install.ps1:

1. Die Hilfsfunktion Ruf gab die Programmausgabe mit zurueck. `return
   $LASTEXITCODE` nach `& $Datei` liefert ein Array aus allen Ausgabe-
   zeilen plus Exit-Code - jeder Vergleich damit ist falsch. Deshalb galt
   ein erfolgreiches fetch-model als fehlgeschlagen und die check-env-
   Ausgabe verschwand. Jetzt ueber Out-Host.

2. Die Bereitschaftspruefung fragte http://localhost:4792/health ab. Der
   Daemon lauscht nur auf IPv4, Windows loest localhost aber zuerst nach
   ::1 auf: gemessen 2066 ms bis zum Rueckfall gegenueber 15 ms direkt.
   Bei einem Zeitlimit von 2 s lief die Pruefung jedes Mal ab, obwohl der
   Daemon laengst lief. Jetzt 127.0.0.1.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AhVSfMFdWnXKCv5JfLnArZ
This commit is contained in:
ZeasyAlexandClaude Opus 5 committed 2026-09-09 18:18:15 +02:00
1 parent 18421a1af0
commit 3f21f1c725
1 file changed
+16 -4
+16 -4
View File
@@ -44,7 +44,14 @@ function Ruf {
param([string]$Datei, [string[]]$Argumente) param([string]$Datei, [string[]]$Argumente)
$alt = $ErrorActionPreference $alt = $ErrorActionPreference
$ErrorActionPreference = 'Continue' $ErrorActionPreference = 'Continue'
try { & $Datei @Argumente; return $LASTEXITCODE } try {
# Out-Host, damit die Ausgabe sichtbar bleibt, aber nicht zum
# Rueckgabewert wird. Ohne das kommt statt des Exit-Codes ein Array
# aus allen Ausgabezeilen zurueck - und jeder Vergleich damit ist
# falsch, ohne dass es auffaellt.
& $Datei @Argumente | Out-Host
return $LASTEXITCODE
}
finally { $ErrorActionPreference = $alt } finally { $ErrorActionPreference = $alt }
} }
@@ -202,13 +209,18 @@ if (-not $KeinAutostart) {
Start-ScheduledTask -TaskName 'abdulive' Start-ScheduledTask -TaskName 'abdulive'
# Warten, bis die Weboberflaeche antwortet - sonst oeffnet der Browser # Warten, bis die Weboberflaeche antwortet - sonst oeffnet der Browser
# ins Leere. Der Daemon braucht ein paar Sekunden fuer Datenbank und # ins Leere. Der Daemon braucht einen Moment fuer Datenbank und erste
# erste Verbindungen. # Verbindungen.
#
# 127.0.0.1 und nicht localhost: der Daemon lauscht nur auf IPv4, und
# Windows loest localhost zuerst nach ::1 auf. Gemessen 2066 ms bis zum
# Rueckfall gegenueber 15 ms direkt - die Pruefung lief jedes Mal in ihr
# eigenes Zeitlimit.
$bereit = $false $bereit = $false
foreach ($i in 1..30) { foreach ($i in 1..30) {
Start-Sleep -Seconds 1 Start-Sleep -Seconds 1
try { try {
$null = Invoke-WebRequest 'http://localhost:4792/health' -UseBasicParsing -TimeoutSec 2 $null = Invoke-WebRequest 'http://127.0.0.1:4792/health' -UseBasicParsing -TimeoutSec 2
$bereit = $true $bereit = $true
break break
} catch { } } catch { }