Files
wildcard-lets-encrypt-cert-…/run.sh
T
duffyduckandClaude Opus 5 611593b5c0 Zone gezielt bei Plesk erfragen statt alle Domains aufzulisten
Ein Name wie endian.fon-aria.de ist oft nur ein Record in der Zone
fon-aria.de und existiert weder als Domain noch als Abo. Ausserdem darf
nicht jeder API-User alle Domains des Servers auflisten - dann brach das
Tool mit "No domains found on the Plesk server" ab, obwohl die Zone da war.

Die Zone wird jetzt Label fuer Label von unten nach oben gezielt abgefragt
(endian.fon-aria.de -> fon-aria.de), jeweils per site.get und webspace.get
mit Namensfilter. Das Auflisten aller Domains dient nur noch der
Fehlermeldung, die jetzt auch zeigt, welche Namen probiert wurden und was
Plesk dazu gesagt hat.

- neue Option --zone, um die Zone bei Bedarf fest vorzugeben
- get_rec meldet jetzt als Warnung, wenn Plesk keine Records liefert
- run.sh baut das Image immer (Cache), damit kein alter Stand haengen bleibt
- Tests bilden den Fall nach: Zone nur als Abo auffindbar, Auflisten verboten

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-13 10:14:51 +02:00

32 lines
829 B
Bash
Executable File

#!/usr/bin/env bash
# Bequemer Wrapper: ./run.sh vpn.example.com 1.2.3.4 [weitere Optionen]
set -euo pipefail
cd "$(dirname "$0")"
if [ ! -f .env ]; then
echo "Es gibt noch keine .env - bitte .env.example kopieren und ausfuellen:" >&2
echo " cp .env.example .env && \$EDITOR .env" >&2
exit 2
fi
mkdir -p certs data
if docker compose version >/dev/null 2>&1; then
DC="docker compose"
elif command -v docker-compose >/dev/null 2>&1; then
DC="docker-compose"
else
echo "Weder 'docker compose' noch 'docker-compose' gefunden." >&2
exit 2
fi
export PUID="${PUID:-$(id -u)}"
export PGID="${PGID:-$(id -g)}"
# Immer bauen - ist bei unveraendertem Code dank Cache in ~1s durch und
# vermeidet, dass ein alter Stand im Image haengen bleibt.
$DC build -q >/dev/null
exec $DC run --rm wildcard-cert "$@"