@openinc/caddy-manager-cli
v1.2.0
Published
CLI für den open.INC Caddy Manager: Deployments hochladen, Rollback, Import aus dem Altsystem
Keywords
Readme
@openinc/caddy-manager-cli
Kommandozeilen-Werkzeug für den Caddy Manager: Static-/SPA-Deployments hochladen, live schalten und zurückrollen, z. B. aus einer CI-Pipeline.
Die Version des CLI entspricht der Version des Caddy-Manager-Images, mit dem es spricht.
Aufruf
npx -y @openinc/caddy-manager-cli --helpVoraussetzung: Node.js ≥ 22.12. Das Paket hat keine Laufzeit-Abhängigkeiten.
Verbindung
| Option | Umgebungsvariable | Beispiel |
| ------------ | ----------------- | --------------------------------- |
| --url | CM_URL | https://manage.example.com:8443 |
| --user | CM_USER | ci |
| --password | CM_PASSWORD | |
Standardmäßig hat die Verwaltung ein Let's-Encrypt-Zertifikat. Nutzt sie stattdessen Caddys interne CA (boot-config --manage-tls internal), die Root-CA per NODE_EXTRA_CA_CERTS=/pfad/zur/root.crt bekannt machen.
Befehle
| Befehl | Zweck |
| ------------------------------------ | ------------------------------------------------------------- |
| sites [--json] | Alle Sites auflisten |
| deployments <site> [--json] | Deployments einer Site |
| deploy <site> <ordner\|datei.zip> | Hochladen und live schalten (--branch, --no-activate, --keep N) |
| activate <site> <deployment-id> | Bestimmtes Deployment live schalten |
| rollback <site> [deployment-id] | Ohne ID: zurück auf das vorherige Deployment |
| prune <site> [--keep N] | Alte Deployments löschen (das aktive bleibt immer) |
| boot-config … | Start-Config für den Caddy-Manager-Container erzeugen |
| import-legacy <ordner> | Sites aus dem Datenordner des Altsystems übernehmen |
Beispiel: Deploy aus GitHub Actions
- name: Deploy
env:
CM_URL: ${{ vars.CM_URL }}
CM_USER: ci
CM_PASSWORD: ${{ secrets.CM_PASSWORD }}
run: npx -y @openinc/caddy-manager-cli deploy meine-site ./dist --branch ${{ github.ref_name }} --keep 10Die Verwaltung muss vom Runner aus erreichbar sein.
Lizenz
MIT, siehe LICENSE. Hinweise zu gebündelten Drittanbieter-Paketen: dist/THIRD_PARTY_LICENSES.md.
