branchway

Kommandozeile: branchway

Mit branchway steuerst du deine Apps aus dem Terminal oder einer CI-Pipeline: anlegen, deployen, Logs lesen, skalieren, Variablen und Alarme setzen. Die Kommandozeile ist eine einzige Datei ohne Abhängigkeiten und braucht nur Node.js ab Version 18.

Installieren

Unter macOS und Linux:

curl -fsSL https://branchway.io/cli/branchway.mjs -o /usr/local/bin/branchway
chmod +x /usr/local/bin/branchway
branchway hilfe

Ohne Schreibrechte in /usr/local/bin geht auch ~/.local/bin. Unter Windows startest du die Datei mit node branchway.mjs.

Anmelden

Lege in der Console unter Team → Zugriffsschlüssel einen Schlüssel an. Seine Rolle bestimmt, was die Kommandozeile darf: Mit Leser kann sie nur ansehen, mit Entwickler auch deployen.

branchway anmelden
API-Schlüssel: ••••••••
✔ Angemeldet – 3 App(s) im Team.

Der Zugang liegt danach in ~/.config/branchway/zugang.json, lesbar nur für dich.

Die wichtigsten Befehle

branchway apps                                 # alle Apps des Teams
branchway anlegen shop https://github.com/ich/shop.git
branchway deploy shop                          # bauen, ausrollen, Log live
branchway status shop                          # Zustand und letzte Deployments
branchway logs shop -f                         # Logs fortlaufend
branchway variablen setzen shop API_KEY=abc
branchway skalieren shop 3
branchway groesse shop m
branchway zurueck shop 41                      # auf Deployment #41 zurück
branchway alarme anlegen shop fehlerquote 5 --minuten 5
branchway kosten

Mit --json liefern apps, status, variablen, alarme und kosten maschinenlesbare Ausgaben für eigene Skripte. branchway hilfe zeigt alle Befehle.

In CI, zum Beispiel GitHub Actions

In Pipelines meldest du dich nicht an, sondern setzt den Schlüssel als Umgebungsvariable BRANCHWAY_TOKEN. Schlägt das Deployment fehl, endet der Befehl mit Code 1 und die Pipeline wird rot – die vorige Version läuft dabei weiter.

- name: Auf Branchway deployen
  run: |
    curl -fsSL https://branchway.io/cli/branchway.mjs -o branchway
    node branchway deploy shop
  env:
    BRANCHWAY_TOKEN: ${{ secrets.BRANCHWAY_TOKEN }}

Weiterlesen