Welle 1 · Ausführer: Zertifikats-Zwischenspeicher hieß wie seine Funktion; PVE/PBS mit Rechnernamen

Der erste echte Bericht trug statt der Zertifikate „'function' object is not subscriptable“: def _zertifikate()
überschrieb das gleichnamige Dict. Jetzt _zertifikate_stand, mit Test über genau diesen Weg (auf dem Host
nachgeprüft: 12 Zertifikate). Proxmox-Host und PBS heißen in der Liste nach ihrem Rechnernamen statt „localhost“.
OFFENE-FAEDEN: Welle 1 erledigt, AdGuard-Zugang offen beim User.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-09-25 16:59:00 +02:00
co-authored by Claude Opus 5.5
parent d063f745f6
commit 371dcc7ce3
4 changed files with 34 additions and 6 deletions
+15 -1
View File
@@ -90,12 +90,26 @@ def test_zertifikate_lesen(a, monkeypatch):
assert len(befehle) == 2 and "/opt/npmplus/tls/certbot/live/*/fullchain.pem" in befehle[0]
def test_zertifikate_im_bericht_hoechstens_alle_30_minuten(a, monkeypatch):
"""Der Weg, den der Bericht nimmt: 25.09.2026 abends hieß der Zwischenspeicher wie die Funktion, und der erste
echte Bericht trug statt der Zertifikate „'function' object is not subscriptable“."""
gelesen: list[int] = []
monkeypatch.setattr(a, "_zertifikate_lesen", lambda gaeste: gelesen.append(len(gaeste)) or [{"quelle": "pve"}])
monkeypatch.setattr(a, "_zertifikate_stand", {"zeit": 0.0, "liste": None})
assert a._zertifikate([]) == [{"quelle": "pve"}]
assert a._zertifikate([]) == [{"quelle": "pve"}] and gelesen == [0] # gemerkt
a._zertifikate_stand["zeit"] -= a.ZERTIFIKATE_ALLE_S
a._zertifikate([{"vmid": 1}])
assert gelesen == [0, 1]
# --- Bewertung -----------------------------------------------------------------------------------------------------
NPM = {"quelle": "npm", "gast": 101, "name": "npm-11", "von": _utc(2026, 9, 23, 4, 45, 2),
"bis": _utc(2026, 9, 29, 20, 45, 1), "aussteller": "Let's Encrypt", "namen": ["git.tobisniceshomelab.ddnsfree.com"]}
PVE = {"quelle": "pve", "gast": None, "name": "pve-ssl.pem", "von": _utc(2025, 8, 5, 16, 5, 14),
"bis": _utc(2027, 8, 5, 16, 5, 14), "aussteller": "PVE Cluster Manager CA", "inhaber": "pve.fritz.box", "namen": []}
"bis": _utc(2027, 8, 5, 16, 5, 14), "aussteller": "PVE Cluster Manager CA", "inhaber": "pve.fritz.box",
"namen": ["localhost", "pve", "pve.fritz.box"]}
def test_bewertung_nach_laufzeit():