proxy add: nachsehen, ob der Eintrag wirklich steht

Beim Nachstellen eines Problems ist mir aufgefallen, dass "proxy add"
Erfolg meldete - samt vergebener ID -, die Liste der Proxy-Hosts danach
aber leer war und keine nginx-Konfiguration geschrieben wurde. Der
Proxy Manager war noch am Starten: er nimmt den Aufruf an, gibt ein
Objekt mit ID zurueck und verliert es anschliessend wieder.

Nach dem Anlegen wird der Eintrag deshalb einmal abgerufen. Fehlt er,
gibt es einen Fehler statt einer falschen Erfolgsmeldung. Fehlt nur die
erzeugte Datei unter /data/nginx/proxy_host, reicht ein Hinweis auf
"proxy reload".

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-20 21:38:57 +02:00
co-authored by Claude Opus 5
parent 48228ba910
commit 9a567c6cca
+17
View File
@@ -4527,6 +4527,23 @@ EOF
[ -n "$m" ] && printf ' Antwort: %s\n' "$m" >&2 [ -n "$m" ] && printf ' Antwort: %s\n' "$m" >&2
return 1 return 1
fi fi
# Nachsehen, ob der Eintrag wirklich steht. Wird der Proxy Manager
# gerade erst fertig, nimmt er den Aufruf an und verliert ihn
# anschliessend wieder - dann meldet nur die Pruefung den Fehler.
local check; check="$(npm_api GET "/api/nginx/proxy-hosts/$newid")"
if [ "$(json_num "$check" id)" != "$newid" ]; then
err "Der Proxy-Host wurde angenommen, ist aber nicht abrufbar."
log "Das passiert, wenn der Proxy Manager noch startet.
Kurz warten und noch einmal versuchen:
$SELF proxy list"
return 1
fi
if ! $RUNTIME exec "$NPM_CONTAINER_NAME" \
test -f "/data/nginx/proxy_host/$newid.conf" 2>/dev/null; then
warn "Zu Proxy-Host $newid wurde noch keine nginx-Konfiguration geschrieben."
log "Nachholen: $SELF proxy reload"
fi
ok "Proxy-Host $newid angelegt: $domain -> $scheme://$fhost:$fport" ok "Proxy-Host $newid angelegt: $domain -> $scheme://$fhost:$fport"
if [ -n "$locs" ]; then if [ -n "$locs" ]; then
printf ' Zusaetzliche Pfade:\n' printf ' Zusaetzliche Pfade:\n'