Gruen-Gate: Ampel gruen auf main -> automatische Befoerderung auf stable
Ampel / ampel (push) Successful in 31s
Ampel / ampel (push) Successful in 31s
Arcane-GitSync deployt kuenftig von stable (rot deployt NIE). deploy.sh wird zum Notfall-Hebel. MakeMKV-Entscheid: Konzept gilt, lossless als Etappe 10 in der ROADMAP verankert.
This commit is contained in:
@@ -71,3 +71,14 @@ jobs:
|
||||
echo "❌ AMPEL ROT — nichts heißt ‚fertig', solange das rot ist."
|
||||
fi
|
||||
exit $rot
|
||||
|
||||
- name: Grün-Gate — grünen Stand auf 'stable' befördern (Arcane deployt von dort)
|
||||
if: success()
|
||||
shell: bash
|
||||
run: |
|
||||
if [ "${GITHUB_REF_NAME:-}" = "main" ]; then
|
||||
git push origin +HEAD:refs/heads/stable
|
||||
echo "✅ main → stable befördert. Arcane-GitSync zieht 'stable' und deployt."
|
||||
else
|
||||
echo "Kein main-Push — keine Beförderung."
|
||||
fi
|
||||
|
||||
@@ -17,9 +17,11 @@ abschwächen). Keine Tests = rot = nicht fertig. Der Commander liest die Ampel,
|
||||
gestrichenes Muss-Feature → erst den Commander fragen, NIE still ersetzen.
|
||||
(Vorgefallen: Muss-Feature „MakeMKV lossless" wurde still durch lossy HandBrake ersetzt.)
|
||||
|
||||
**C. Deployment NUR über `./deploy.sh`.** Idempotent, EIN fester Compose-Projektname
|
||||
(`rippy`), EIN Pfad (`~/projects/rippy`). Nie freihändig per SSH auf der VM bauen.
|
||||
(Vorgefallen: Doppel-Anlage `Rippy` + `rippy` auf der arcane-VM.)
|
||||
**C. Deployment läuft AUTOMATISCH über das Grün-Gate.** Ampel grün auf `main` →
|
||||
CI befördert den Stand auf Branch `stable` → Arcane-GitSync zieht `stable` und
|
||||
deployt. Du deployst also durch PUSHEN, nicht durch Kommandos. `./deploy.sh` ist
|
||||
NUR der Notfall-Hebel (Arcane down o. ä.); nie freihändig per SSH auf der VM bauen.
|
||||
(Vorgefallen: Doppel-Anlage `Rippy` + `rippy` auf der VM durch Freihand-Deploys.)
|
||||
|
||||
**D. Externe Schnittstellen NIE aus dem Kopf.** Vor Nutzung fremder CLI-Flags oder
|
||||
Bibliotheks-APIs: `--help`/Doku prüfen und die Fundstelle im Commit nennen.
|
||||
|
||||
+12
@@ -217,3 +217,15 @@
|
||||
| TMDB-Bildrechte | Etappe 4 | Gelöst: TMDB API-ToS erlaubt private Nutzung |
|
||||
| Hybrid-Discs | Etappe 1 | MVP erkennt nur Standard; als "Kann" notiert |
|
||||
| Redis Single-Instance | Etappe 1 | MVP reicht; Cluster als "Später" |
|
||||
|
||||
## Etappe 10: MakeMKV-Umstellung — das Muss-Feature „lossless" einlösen
|
||||
**Ziel:** DVD/Blu-ray-Ripping auf `makemkvcon` umstellen (verlustfrei), wie im
|
||||
KONZEPT als Muss definiert. HandBrake fliegt aus dem Ripp-Pfad (bleibt ggf. als
|
||||
optionaler Transcode-Schritt NACH dem verlustfreien Rip).
|
||||
- [ ] Worker-Dockerfile: makemkv-oss/makemkv-bin bauen + Beta-Key-Handling (Env/Cron)
|
||||
- [ ] ripping.py: rip_dvd/rip_bluray auf `makemkvcon --all --progress mkv` umstellen
|
||||
(Fortschritts-Parsing anpassen, Tests zuerst!)
|
||||
- [ ] E2E mit echter Disc verifizieren (Commander, Laufwerk nötig)
|
||||
**Fertig wenn:** eine echte DVD landet verlustfrei als MKV im Output, Ampel grün.
|
||||
**Entstanden aus:** Review 22.07. — HandBrake-lossy war eine stille Abweichung vom
|
||||
Konzept; Entscheid 22.07. abends: Konzept gilt, Umbau als eigene Etappe.
|
||||
|
||||
+10
-8
@@ -93,12 +93,14 @@ Gefixt:
|
||||
- Tests: test_auth, test_cache_keys, test_ripping_helpers (der giftige
|
||||
test_health-Placebo ist raus).
|
||||
|
||||
## ⚠️ OFFENE ENTSCHEIDUNG FÜR DEN COMMANDER (Regel B — keine stille Abweichung)
|
||||
## ✅ ENTSCHIEDEN (22.07. abends): Das KONZEPT gilt — MakeMKV kommt
|
||||
|
||||
**KONZEPT sagt: MakeMKV, verlustfrei (Muss-Feature). Gebaut wurde: HandBrake mit
|
||||
Lossy-Preset „Fast 1080p30".** Deine DVDs/Blu-rays werden aktuell TRANSKODIERT,
|
||||
nicht verlustfrei gesichert. Optionen:
|
||||
1. Auf MakeMKV umbauen (wie geplant — makemkvcon ist im Prescan schon im Einsatz,
|
||||
braucht Beta-Key-Handling im Worker-Container), ODER
|
||||
2. Konzept bewusst ändern („lossy reicht mir") und KONZEPT.md anpassen.
|
||||
Bis zur Entscheidung bleibt HandBrake aktiv — aber jetzt SICHTBAR statt still.
|
||||
**MakeMKV lossless (Muss-Feature) wird umgesetzt — als eigene Etappe 10 in der
|
||||
ROADMAP** (Worker-Container + makemkvcon + Beta-Key, in Zed zu bauen, E2E mit
|
||||
echter Disc). Bis dahin bleibt HandBrake als SICHTBARER Übergang aktiv — jede*r
|
||||
weiß: aktuell wird transkodiert, nicht verlustfrei gesichert.
|
||||
|
||||
## Deploy-Weg seit 22.07. abends: GRÜN-GATE (vollautomatisch)
|
||||
Push auf `main` → Ampel prüft → grün → CI befördert auf Branch `stable` →
|
||||
**Arcane-GitSync zieht `stable` und deployt**. Rot deployt NIE. `./deploy.sh`
|
||||
ist nur noch der Notfall-Hebel; SSH zur VM bleibt als Fallback erlaubt.
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
# EINZIGER Deploy-Weg für Rippy (Regel C in AGENTS.md, seit 22.07.2026).
|
||||
# NOTFALL-Deploy für Rippy (seit Grün-Gate 22.07.2026 NICHT mehr der Normalweg!).
|
||||
# Normalweg: push → Ampel grün → CI befördert auf 'stable' → Arcane-GitSync deployt.
|
||||
# Dieses Skript nur nutzen, wenn der Automat klemmt (Arcane down o. ä.).
|
||||
# Idempotent: EIN Compose-Projektname (rippy), EIN Pfad auf der VM.
|
||||
# Nie freihändig per SSH bauen — genau daraus entstand die Doppel-Anlage
|
||||
# Rippy/rippy am 21.07.
|
||||
set -euo pipefail
|
||||
|
||||
VM="arcane@192.168.178.162"
|
||||
|
||||
Reference in New Issue
Block a user