Python
Semaphore kann Python-Skripte direkt ausführen. Erstellen Sie dazu ein Python-Task-Template.
Ein Python-Template erstellen
- Öffnen Sie den Bereich Task-Templates und klicken Sie auf die Schaltfläche Neues Template.
- Wählen Sie Python als App-Typ.
- Konfigurieren Sie das Template:
| Feld | Beschreibung |
|---|---|
| Name | Ein aussagekräftiger Name für das Template |
| Repository | Repository, das Ihr .py-Skript enthält |
| Playbook / Skript | Relativer Pfad zum Skript, z. B. scripts/deploy.py |
| Variablengruppen | Variablengruppen, deren Werte als Umgebungsvariablen eingefügt werden |
- Klicken Sie auf Erstellen.
- Klicken Sie auf Ausführen, um das Template auszuführen.
Variablen an Skripte übergeben
Variablen aus den ausgewählten Variablengruppen werden als Umgebungsvariablen eingefügt. Greifen Sie in Python mit os.environ darauf zu:
import os
target = os.environ.get("TARGET_HOST")
print(f"Deploying to {target}")
Python-Version und Abhängigkeiten
Semaphore verwendet die python3-Binärdatei, die in der Ausführungsumgebung im PATH liegt.
- Binär-/Paketinstallation: Stellen Sie sicher, dass das richtige
python3auf dem Host installiert ist. - Docker: Verwenden Sie ein benutzerdefiniertes Image mit der erforderlichen Python-Version.
- Docker (zusätzliche Pakete): Binden Sie eine
requirements.txtunter/etc/semaphore/requirements.txtim Server- oder Runner-Container ein. Semaphore installiert sie bei jedem Containerstart in die mitgelieferte virtuelle Python-Umgebung. Siehe Zusätzliche Python-Abhängigkeiten installieren.
Hinweise
- Skripte laufen nicht interaktiv.
- Exit-Code
0bedeutet Erfolg; jeder Exit-Code ungleich null markiert den Task als fehlgeschlagen.