Zum Hauptinhalt springen

Shell-/Bash-Skripte

Semaphore kann Shell-Skripte mit /bin/bash ausführen. Erstellen Sie dazu ein Bash Script-Task-Template.

Ein Bash-Template erstellen​

  1. Öffnen Sie den Bereich Task-Templates und klicken Sie auf die Schaltfläche Neues Template.
  2. Wählen Sie Bash als App-Typ.
  3. Konfigurieren Sie das Template:
FeldBeschreibung
NameEin aussagekräftiger Name für das Template
RepositoryRepository, das Ihr Shell-Skript enthält
Playbook / SkriptRelativer Pfad zum Skript, z. B. scripts/deploy.sh
VariablengruppenVariablengruppen, deren Werte als Umgebungsvariablen eingefügt werden
  1. Klicken Sie auf Erstellen.
  2. Klicken Sie auf Ausführen, um das Template auszuführen. Der Dialog für einen neuen Task enthält bei einem Skript-Template nur die optionale Nachricht sowie Survey-Variablen und Prompts, sofern das Template sie definiert.

Dialog für einen neuen Task bei einem Bash-Template

Variablen an Skripte übergeben​

Variablen aus den ausgewählten Variablengruppen werden als Umgebungsvariablen eingefügt. Greifen Sie im Skript mit $VARIABLE_NAME darauf zu:

#!/bin/bash
echo "Deploying to $TARGET_HOST"

Hinweise​

  • Machen Sie Ihr Skript ausführbar (chmod +x) oder stellen Sie sicher, dass es mit einem gültigen Shebang (#!/bin/bash) beginnt.
  • Skripte laufen nicht interaktiv. Vermeiden Sie Abfragen, die auf Benutzereingaben warten.
  • Exit-Code 0 bedeutet Erfolg; jeder Exit-Code ungleich null markiert den Task als fehlgeschlagen.
  • Wenn ein sehr kurzes Skript keine Log-Ausgabe erzeugt, siehe Ausgabe eines Bash-Skripts fehlt oder ist unvollständig in der Anleitung zur Fehlerbehebung.
  • Um Befehle auf entfernten Hosts auszuführen, verwenden Sie stattdessen Ansible.