feat(cli): proxdeploy in Go
Befehle login, servers, distros, profiles, presets, vm, lxc, template list|build, batch, status, logs --follow, cancel. Renderer im Aufbau der Vorgabe (zeichengenau per Golden-File), 24-bit/256/ohne Farbe, --ascii, --quiet, --json, --dry-run; live im Terminal, zeilenweise ohne. SSE mit Wiederverbinden und Polling als Rückfall. Typen aus openapi.json per oapi-codegen; Release-Builds per cli/bauen.sh. Refs #013 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
⬡ ProxDeploy v1.0 · Server rz1 · Node pve01 · Debian 13 · DRY-RUN
|
||||
|
||||
✓ Prüfungen VMID 120 frei
|
||||
○ Template vorhanden (9013)
|
||||
✗ Klonen Storage local-zfs ist voll.
|
||||
→ Anderen Storage wählen.
|
||||
|
||||
→ POST /nodes/pve01/qemu/9013/clone full=1 name=web01 newid=120
|
||||
→ PUT /nodes/pve01/qemu/120/config description=Zeile 1⏎Zeile 2 sshkeys=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA…
|
||||
|
||||
┌───────────────────────────────────────────────────────────────────────────────────────────┐
|
||||
│ ✗ web01 fehlgeschlagen · 12s │
|
||||
│ Phase Klonen │
|
||||
│ Ursache Storage local-zfs ist voll. │
|
||||
│ Hinweis Anderen Storage wählen und die VM mit einem sehr langen Hinweis neu ausrollen. │
|
||||
└───────────────────────────────────────────────────────────────────────────────────────────┘
|
||||
@@ -0,0 +1,16 @@
|
||||
[38;2;139;152;165m⬡ [0m[38;2;230;237;243mProx[0m[1;38;2;45;212;191mDeploy[0m[38;2;139;152;165m v1.0 · Server rz1 · Node pve01 · Debian 13 (Template 9013)[0m
|
||||
|
||||
[38;2;45;212;191m✓[0m [38;2;230;237;243mPrüfungen [0m[38;2;139;152;165mVMID 120 frei · local-zfs · vmbr0 VLAN 20[0m
|
||||
[38;2;45;212;191m✓[0m [38;2;230;237;243mKlonen [0m[38;2;139;152;165mfull clone 9013 → 120 · Disk auf 40G[0m
|
||||
[38;2;45;212;191m✓[0m [38;2;230;237;243mcloud-init [0m[38;2;139;152;165muser florian · SSH-Key · Profile base, docker[0m
|
||||
[38;2;45;212;191m✓[0m [38;2;230;237;243mStart [0m[38;2;139;152;165mVM 120 läuft[0m
|
||||
[38;2;45;212;191m✓[0m [38;2;230;237;243mGuest-Agent [0m[38;2;139;152;165mantwortet nach 18s[0m
|
||||
[38;2;245;184;65m◐[0m [38;2;230;237;243mProvisionierung [0m[38;2;139;152;165mcloud-init läuft … 1m 12s[0m
|
||||
|
||||
[38;2;45;212;191m┌──────────────────────────────────────┐[0m
|
||||
[38;2;45;212;191m│[0m [38;2;45;212;191m●[0m [1;38;2;230;237;243mweb01 bereit[0m[38;2;139;152;165m · 1m 54s[0m [38;2;45;212;191m│[0m
|
||||
[38;2;45;212;191m│[0m [38;2;139;152;165mVMID [0m[38;2;230;237;243m120[0m [38;2;45;212;191m│[0m
|
||||
[38;2;45;212;191m│[0m [38;2;139;152;165mIP [0m[38;2;230;237;243m10.0.20.15[0m [38;2;45;212;191m│[0m
|
||||
[38;2;45;212;191m│[0m [38;2;139;152;165mProfile [0m[38;2;230;237;243mbase, docker[0m [38;2;45;212;191m│[0m
|
||||
[38;2;45;212;191m│[0m [38;2;139;152;165mSSH [0m[38;2;230;237;243mssh florian@10.0.20.15[0m [38;2;45;212;191m│[0m
|
||||
[38;2;45;212;191m└──────────────────────────────────────┘[0m
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
[38;5;246m⬡ [0m[38;5;254mProx[0m[1;38;5;43mDeploy[0m[38;5;246m v1.0 · Server rz1 · Node pve01 · Debian 13 (Template 9013)[0m
|
||||
|
||||
[38;5;43m✓[0m [38;5;254mPrüfungen [0m[38;5;246mVMID 120 frei · local-zfs · vmbr0 VLAN 20[0m
|
||||
[38;5;43m✓[0m [38;5;254mKlonen [0m[38;5;246mfull clone 9013 → 120 · Disk auf 40G[0m
|
||||
[38;5;43m✓[0m [38;5;254mcloud-init [0m[38;5;246muser florian · SSH-Key · Profile base, docker[0m
|
||||
[38;5;43m✓[0m [38;5;254mStart [0m[38;5;246mVM 120 läuft[0m
|
||||
[38;5;43m✓[0m [38;5;254mGuest-Agent [0m[38;5;246mantwortet nach 18s[0m
|
||||
[38;5;215m◐[0m [38;5;254mProvisionierung [0m[38;5;246mcloud-init läuft … 1m 12s[0m
|
||||
|
||||
[38;5;43m┌──────────────────────────────────────┐[0m
|
||||
[38;5;43m│[0m [38;5;43m●[0m [1;38;5;254mweb01 bereit[0m[38;5;246m · 1m 54s[0m [38;5;43m│[0m
|
||||
[38;5;43m│[0m [38;5;246mVMID [0m[38;5;254m120[0m [38;5;43m│[0m
|
||||
[38;5;43m│[0m [38;5;246mIP [0m[38;5;254m10.0.20.15[0m [38;5;43m│[0m
|
||||
[38;5;43m│[0m [38;5;246mProfile [0m[38;5;254mbase, docker[0m [38;5;43m│[0m
|
||||
[38;5;43m│[0m [38;5;246mSSH [0m[38;5;254mssh florian@10.0.20.15[0m [38;5;43m│[0m
|
||||
[38;5;43m└──────────────────────────────────────┘[0m
|
||||
@@ -0,0 +1,16 @@
|
||||
ProxDeploy v1.0 · Server rz1 · Node pve01 · Debian 13 (Template 9013)
|
||||
|
||||
[OK] Prüfungen VMID 120 frei · local-zfs · vmbr0 VLAN 20
|
||||
[OK] Klonen full clone 9013 → 120 · Disk auf 40G
|
||||
[OK] cloud-init user florian · SSH-Key · Profile base, docker
|
||||
[OK] Start VM 120 läuft
|
||||
[OK] Guest-Agent antwortet nach 18s
|
||||
[..] Provisionierung cloud-init läuft … 1m 12s
|
||||
|
||||
+--------------------------------------+
|
||||
| [OK] web01 bereit · 1m 54s |
|
||||
| VMID 120 |
|
||||
| IP 10.0.20.15 |
|
||||
| Profile base, docker |
|
||||
| SSH ssh florian@10.0.20.15 |
|
||||
+--------------------------------------+
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
⬡ ProxDeploy v1.0 · Server rz1 · Node pve01 · Debian 13 (Template 9013)
|
||||
|
||||
✓ Prüfungen VMID 120 frei · local-zfs · vmbr0 VLAN 20
|
||||
✓ Klonen full clone 9013 → 120 · Disk auf 40G
|
||||
✓ cloud-init user florian · SSH-Key · Profile base, docker
|
||||
✓ Start VM 120 läuft
|
||||
✓ Guest-Agent antwortet nach 18s
|
||||
◐ Provisionierung cloud-init läuft … 1m 12s
|
||||
|
||||
┌──────────────────────────────────────┐
|
||||
│ ● web01 bereit · 1m 54s │
|
||||
│ VMID 120 │
|
||||
│ IP 10.0.20.15 │
|
||||
│ Profile base, docker │
|
||||
│ SSH ssh florian@10.0.20.15 │
|
||||
└──────────────────────────────────────┘
|
||||
Reference in New Issue
Block a user