docs: CLI in README, Architektur und Konventionen
Refs #013 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+19
-7
@@ -1,5 +1,5 @@
|
||||
# #013 CLI proxdeploy (Go)
|
||||
**Status:** offen
|
||||
**Status:** in Arbeit
|
||||
**Meilenstein:** v0.4.0
|
||||
**Labels:** feature, cli
|
||||
**Geschätzt:** 12 h **Tatsächlich:** –
|
||||
@@ -8,16 +8,28 @@
|
||||
Alle Befehle aus der Vorgabe, Ausgabe exakt im Format der Vorgabe.
|
||||
|
||||
## Aufgaben
|
||||
- [ ] OpenAPI aus zod, Go-Client per oapi-codegen, Prüfung auf Aktualität
|
||||
- [ ] login, servers, distros, profiles, vm, lxc, template build, batch, status, logs --follow
|
||||
- [ ] Renderer: Farbe 24-bit/256/aus, --ascii, --quiet, --json, --dry-run; Golden-Tests
|
||||
- [ ] Release-Builds für linux/darwin/windows × amd64/arm64
|
||||
- [x] API-Tokens (`pd_…`, nur SHA-256 gespeichert, Ablauf, Widerruf) mit Bearer-Anmeldung, `POST /auth/token` für `login`, Verwaltung in den Einstellungen
|
||||
- [x] Kurze Anfragen: Server füllt Storage, Bridge, Node, Benutzer, Schlüssel (`anfrageErgaenzen`), auch beim Template-Bau
|
||||
- [x] Abschlussbox serverseitig (`abschluss`), Web und CLI zeigen dieselben Zeilen
|
||||
- [x] OpenAPI aus zod (`/api/v1/openapi.json`, `pnpm openapi`), Go-Typen per oapi-codegen, `pnpm cli:pruefen`
|
||||
- [x] login, servers, distros, profiles, presets, vm, lxc, template list/build, batch, status, logs --follow, cancel
|
||||
- [x] Renderer: Farbe 24-bit/256/aus, --ascii, --quiet, --json, --dry-run; Golden-Tests
|
||||
- [x] Release-Builds für linux/darwin/windows × amd64/arm64 (`cli/bauen.sh`)
|
||||
- [ ] Abnahme auf pve-demo (VM + LXC per batch)
|
||||
|
||||
## Akzeptanzkriterien
|
||||
- [ ] Ausgabe entspricht zeichengenau dem Mockup (Golden-File)
|
||||
- [x] Ausgabe entspricht zeichengenau dem Mockup (`cli/internal/ausgabe/testdata/mockup.txt`, von Hand aus der Vorgabe übernommen)
|
||||
|
||||
## Abhängigkeiten
|
||||
#008, #012
|
||||
|
||||
## Notizen / Entscheidungen
|
||||
–
|
||||
- **Anfragen als Map, Antworten typisiert.** oapi-codegen macht Pflichtfelder zu Nicht-Zeigern; Go
|
||||
schickte dann `"storage": ""` und überschriebe Vorlagenwerte. Deshalb gehen nur gesetzte Flags hinaus.
|
||||
- **`[instances.<name>]`** statt `[profiles.<name>]` in der Konfiguration – „profile“ ist schon `--profile`.
|
||||
- **Strg+C hängt nur ab**, der Auftrag läuft weiter; Abbruch ist `proxdeploy cancel`.
|
||||
- **Ohne Terminal** (Pipe, CI) kein Neuzeichnen: jede Phase eine Zeile, sobald fertig; die Kopfzeile
|
||||
nach der ersten Phase, weil Node und Template erst dann feststehen.
|
||||
- **SSE-Ausfall:** Wiederverbinden mit Last-Event-ID; nach drei Fehlschlägen ohne Stand Polling alle 2 s.
|
||||
- **Go 1.27.2** ohne sudo unter `~/.local/go`; Bibliotheken mit abgelagerten Versionen (x/term 0.46.0,
|
||||
go-runewidth 0.0.30 statt der wenige Tage alten Nachfolger).
|
||||
|
||||
@@ -16,7 +16,7 @@ Details und Architektur: [../architektur.md](../architektur.md). Zeiten werden a
|
||||
| [#010](010-ubuntu.md) | Ubuntu 22.04, 24.04 und 26.04 | erledigt | v0.3.0 | 3 h | 0 h 05 min |
|
||||
| [#011](011-profile-docker-zabbix.md) | Profile docker und zabbix-agent, Variablen, Editor | erledigt | v0.3.0 | 6 h | 0 h 10 min |
|
||||
| [#012](012-vorlagen.md) | Vorlagen (Presets) | erledigt | v0.3.0 | 3 h | 0 h 11 min |
|
||||
| [#013](013-cli.md) | CLI proxdeploy (Go) | offen | v0.4.0 | 12 h | – |
|
||||
| [#013](013-cli.md) | CLI proxdeploy (Go) | in Arbeit | v0.4.0 | 12 h | – |
|
||||
| [#014](014-verlauf.md) | Verlauf und Wiederholen | offen | v0.5.0 | 4 h | – |
|
||||
| [#015](015-rollen-audit.md) | Rollen, Benutzer, Tokens, Audit-Log | offen | v0.5.0 | 6 h | – |
|
||||
| [#016](016-oidc.md) | Anmeldung per OIDC | offen | v0.5.0 | 4 h | – |
|
||||
|
||||
Reference in New Issue
Block a user