Inhaltsverzeichnis
-
Funktionen
-
Aktivitäts- und Aufgabenprotokolle in eine Datei schreiben (PRO)
Halten Sie einen dauerhaften Datensatz aller Aktivitätsprotokolle, indem Sie sie direkt in eine Datei speichern. Verfügbar in der PRO-Version.
Erfahren Sie mehr » -
API-Token-Seite
Sie müssen cURL nicht mehr verwenden, um API-Token zu erstellen.
Erfahren Sie mehr » -
Rohprotokolle von Aufgaben anzeigen
Sie können jetzt auf die unbearbeiteten, rohen Protokolldaten für jede Aufgabe zugreifen – perfekt zum Debuggen.
Erfahren Sie mehr » -
Projekt- und Runner-Cache leeren
Schaffen Sie Platz und starten Sie neu, indem Sie den Cache für Projekte und Runner manuell leeren.
Erfahren Sie mehr » -
Branch in Vorlagen und Aufgaben überschreiben
Wechseln Sie flexibel zwischen Branches, ohne Ihre gesamte Vorlage zu bearbeiten – überschreiben Sie sie einfach pro Aufgabe oder Vorlage.
Erfahren Sie mehr » -
Neue Umgebungsvariable für OIDC-Anbieter-Konfiguration
Eine neue Umgebungsvariable wurde hinzugefügt, um die Einrichtung und Integration von OIDC-Anbietern zu vereinfachen.
Erfahren Sie mehr » -
Neue temporäre Verzeichnisstruktur
Wir haben die Struktur der temporären Verzeichnisse verbessert, um eine bessere Isolation zu bieten und sie leichter verständlich zu machen.
Erfahren Sie mehr » -
Möglichkeit, externe (LDAP- und OIDC-) Benutzer manuell hinzuzufügen
Sie können jetzt LDAP- und OIDC-Benutzer zu Semaphore hinzufügen, bevor sie sich zum ersten Mal anmelden.
Erfahren Sie mehr » -
Standardwerte für Umfragevariablen
Sie können jetzt Standardwerte für Umfragevariablen festlegen, was das Vorabfüllen gängiger Eingaben während der Aufgabenläufe erleichtert.
Erfahren Sie mehr » -
TLS-Unterstützung für SMTP-Serververbindungen
Semaphore unterstützt jetzt sichere TLS-Verbindungen beim Versenden von E-Mails über einen SMTP-Server.
Erfahren Sie mehr » -
Konfigurierbare Ansible-Playbook-Verbosity-Stufen
Sie können jetzt die gewünschte Verbosity-Stufe beim Ausführen von Ansible-Playbook-Aufgaben auswählen, was beim Debuggen und Troubleshooting hilft.
Erfahren Sie mehr » -
Chroot-Unterstützung und Ausführung von Aufgaben als anderer Benutzer
Semaphore kann jetzt Aufgaben in einer Chroot-Umgebung und unter einem bestimmten Benutzer ausführen, was die Sicherheit und Isolation verbessert.
Erfahren Sie mehr » -
Bitbucket Webhook-Authentifizierungsunterstützung
Integrationen können jetzt mit Bitbucket-Webhook-Authentifizierung konfiguriert werden.
Erfahren Sie mehr » -
Zeitzoneneinstellungen für Zeitpläne
Semaphore verwendet nicht mehr die Systemzeitzone. Stattdessen können Sie jetzt explizit eine Zeitzone für Zeitpläne festlegen.
Erfahren Sie mehr »
-
Funktionen
Aktivitäts- und Aufgabenprotokolle in eine Datei schreiben (PRO)
Semaphore Pro unterstützt jetzt das Schreiben der Aktivitäts- und Aufgabenprotokolle in eine Datei. Um dies zu aktivieren, fügen Sie die folgende Konfiguration zu Ihrer config.json
hinzu:
{
"log": {
"events": {
"enabled": true,
"logger": {
"filename": "./events.log"
}
},
"task": {
"enabled": true,
"logger": {
"filename": "./tasks.log"
}
}
}
}
Oder Sie können dies mit den folgenden Umgebungsvariablen tun:
export SEMAPHORE_EVENT_LOG_ENABLED=True
export SEMAPHORE_EVENT_LOG_PATH=./tasks.log
export SEMAPHORE_TASK_LOG_ENABLED=True
export SEMAPHORE_TASK_LOG_PATH=./tasks.log
Jede Zeile in der Datei folgt diesem Format:
2024-01-03 12:00:34 user=234234 object=template action=delete ...
Dateilogging unterstützt auch Rotation. Weitere Details sind in der Dokumentation verfügbar.
API-Token-Seite

Rohprotokolle von Aufgaben anzeigen
Sie können jetzt das rohe Protokoll einer Aufgabe öffnen, indem Sie auf die Schaltfläche ROHPROTOKOLL in der unteren rechten Ecke des Aufgabenprotokollfensters klicken.

Projekt- und Runner-Cache leeren
Semaphore gibt Ihnen jetzt mehr Kontrolle über das Cache-Management.
Früher wurde ungenutzter Cache automatisch gelöscht, wenn Sie Vorlagen oder Projekte entfernt haben. In einigen Fällen konnte jedoch übrig gebliebener Cache bestehen bleiben und unbegrenzt gespeichert werden.
Mit der neuen Funktion “Cache leeren” können Sie manuell aufräumen:
- Cache für ein bestimmtes Projekt
- Cache für einen Projekt-Runner
- Alle Caches für einen Runner
- Oder sogar den gesamten Semaphore-Server-Cache
Dies hilft, Speicherplatz freizugeben, die Leistung zu verbessern und Ihre Umgebung ordentlich zu halten.

Branch in Vorlagen und Aufgaben überschreiben
Sie können jetzt den Standardbranch des Quell-Repositorys in den Vorlageneinstellungen überschreiben.
Alternativ aktivieren Sie die Option Bei Ausführung nach Branch fragen, um den Branch jedes Mal auszuwählen, wenn Sie eine Aufgabe ausführen.

Neue Umgebungsvariable für OIDC-Anbieter-Konfiguration
Wir haben eine neue Umgebungsvariable eingeführt: SEMAPHORE_OIDC_PROVIDERS
zur Konfiguration von OpenID Connect (OIDC) Anbietern.
Dies ist besonders nützlich, wenn Semaphore in einem Docker-Container ausgeführt wird.
Die Variable muss gültiges JSON im folgenden Format enthalten:
SEMAPHORE_OIDC_PROVIDERS='{
"github": {
"client_id": "***",
"client_secret": "***"
// zusätzliche Felder...
}
}'
Neue temporäre Verzeichnisstruktur
Wir haben die Struktur der temporären Verzeichnisse verbessert, indem wir projektbezogene Verzeichnisse eingeführt haben. Jetzt hat jedes Projekt seinen eigenen dedizierten Ordner im tmp_path
-Verzeichnis.
Diese Änderung erleichtert die Verwaltung und das Aufräumen des Caches, wenn ein Projekt entfernt wird.
Darüber hinaus folgt das Inventarverzeichnis für Vorlagen jetzt einem klaren Namensformat, wie z.B.:
tmp_path/project_0/repository_1_template_2_inventory_3
Diese Struktur hilft, das Klonen des Inventar-Repositorys bei jeder Aufgabenausführung zu vermeiden, was die Leistung verbessert und Redundanz verringert.
Möglichkeit, externe (LDAP- und OIDC-) Benutzer manuell hinzuzufügen
Sie können jetzt LDAP- und OIDC-Benutzer zu Semaphore hinzufügen, bevor sie sich zum ersten Mal anmelden.
Dies ermöglicht es Ihnen, ihre Berechtigungen im Voraus zu konfigurieren und sie Projekten zuzuweisen.
Sie benötigen Administratorrechte, um einen Benutzer über die Weboberfläche hinzuzufügen (Checkbox Extern), oder Sie können die CLI mit dem --external
-Flag verwenden:
semaphore user add \
--external \
--login john \
--name John \
--email [email protected] \
--password=changeme
Standardwerte für Umfragevariablen
Sie können jetzt Standardwerte für Umfragevariablen festlegen, was das Vorabfüllen gängiger Eingaben während der Aufgabenläufe erleichtert.

TLS-Unterstützung für SMTP-Serververbindungen
Semaphore unterstützt jetzt sichere TLS-Verbindungen beim Versenden von E-Mails über einen SMTP-Server. Konfigurationsbeispiel:
{
"email_alert": true,
"email_sender": "[email protected]",
"email_host": "smtp.example.com",
"email_username": "user123",
"email_password": "changeme",
"email_tls": true,
"email_port": "587",
"email_tls_min_version": "1.1" // optional (Standard 1.2)
}
Konfigurierbare Ansible-Playbook-Verbosity-Stufen
Sie können jetzt die gewünschte Verbosity-Stufe beim Ausführen von Ansible-Playbook-Aufgaben auswählen, was beim Debuggen und Troubleshooting hilft.

Chroot-Unterstützung und Ausführung von Aufgaben als anderer Benutzer
Semaphore kann jetzt Aufgaben in einer Chroot-Umgebung und unter einem bestimmten Benutzer ausführen, was die Sicherheit und Isolation verbessert. Konfigurationsbeispiel:
{
"process": {
"chroot": "/opt/semaphore/chroot",
"user": "semrun"
}
}
Beispiel für Umgebungsvariablen:
SEMAPHORE_PROCESS_CHROOT=/opt/semaphore/chroot
SEMAPHORE_PROCESS_USER=semrun
Bitbucket Webhook-Authentifizierungsunterstützung
Integrationen können jetzt mit Bitbucket-Webhook-Authentifizierung konfiguriert werden.

Zeitzoneneinstellungen für Zeitpläne
Semaphore verwendet nicht mehr die Systemzeitzone. Stattdessen können Sie jetzt explizit eine Zeitzone für Zeitpläne mit der folgenden Konfigurationsoption festlegen:
{
"schedule": {
"timezone": "Asia/Calcutta"
}
}
Oder mit der folgenden Umgebungsvariable:
SEMAPHORE_SCHEDULE_TIMEZONE=Asia/Calcutta
Fehlerbehebungen
- Verwenden Sie die UTC-Zeitzone konsistent in der Anwendung.
- Vermeiden Sie das Klonen des Inventar-Repositorys bei jedem Aufgabenlauf.
- Die Kontrollkästchen für Terraform-Aufgaben funktionieren jetzt korrekt.
- Die Wochentagskontrollkästchen im Zeitplan funktionieren jetzt korrekt.
- Die Möglichkeit, Beschreibungen für Vorlagen festzulegen, wurde wiederhergestellt.