Überprüfen des Status von GitHub Actions
Sie können den Status von GitHub Actions unter Ihre GitHub Enterprise Server-Instance mit dem Befehlszeilenprogramm ghe-actions-check überprüfen. Weitere Informationen findest du unter Befehlszeilenwerkzeuge und Auf die Verwaltungsshell (SSH) zugreifen.
Konfigurieren von selbst gehosteten Läufern bei Verwendung eines selbstsignierten Zertifikats für GitHub Enterprise Server
Es wird dringend empfohlen, TLS für GitHub Enterprise Server mit einem Zertifikat zu konfigurieren, das von einem vertrauenswürdigen Aussteller signiert ist. Ein selbst signiertes Zertifikat kann zwar funktionieren, erfordert jedoch zusätzliche Konfiguration für deine selbstgehosteten Runner und wird für Produktionsumgebungen nicht empfohlen. Weitere Informationen finden Sie unter TLS konfigurieren.
Installieren des Zertifikats auf dem Runnercomputer
Damit ein selbstgehosteter Runner eine Verbindung zu einem GitHub Enterprise Server herstellen kann, das ein selbstsigniertes Zertifikat verwendet, müssen Sie das Zertifikat auf dem Computer des Runners installieren, damit die Verbindung sicher abgesichert ist.
Die zur Installation eines Zertifikats erforderlichen Schritte findest du in der Dokumentation für das Betriebssystem des Runners.
Konfigurieren von Node.js für die Verwendung des Zertifikats
Die meisten Aktionen werden in JavaScript geschrieben und mithilfe von Node.js ausgeführt, wobei Node.js nicht den Zertifikatspeicher des Betriebssystems verwendet. Damit die selbstgehostete Runneranwendung das Zertifikat verwendet, musst du die Umgebungsvariable NODE_EXTRA_CA_CERTS auf dem Runnercomputer festlegen.
Sie können die Umgebungsvariable als Systemumgebungsvariable festlegen oder sie in einer Datei namens .env im selbstgehosteten Runner-Anwendungsverzeichnis deklarieren (d. h. dem Verzeichnis, in das Sie die Runner-Software heruntergeladen und entpackt haben).
Zum Beispiel:
NODE_EXTRA_CA_CERTS=/usr/share/ca-certificates/extra/mycertfile.crt
Umgebungsvariablen werden gelesen, wenn die selbstgehostete Runneranwendung gestartet wird. Daher musst du die Umgebungsvariable festlegen, bevor du die Runneranwendung konfigurierst oder startest. Wenn sich deine Zertifikatkonfiguration ändert, musst du die selbstgehostete Runneranwendung neu starten.
Konfigurieren von Docker-Containern für die Verwendung des Zertifikats
Wenn du Docker-Containeraktionen oder Dienstcontainer in deinen Workflows verwendest, musst du das Zertifikat möglicherweise auch in deinem Docker-Image installieren und zusätzlich die oben genannte Umgebungsvariable festlegen.
Konfigurieren von HTTP-Proxyeinstellungen für GitHub Actions
Wenn Sie einen HTTP-Proxyserver auf GitHub konfiguriert haben:
- Sie müssen
.localhost,127.0.0.1und::1zu der HTTP-Proxy-Ausschlussliste hinzufügen (in dieser Reihenfolge). - Wenn dein externer Speicherort nicht routingfähig ist, musst du der Ausschlussliste auch die URL zu deinem externen Speicher hinzufügen.
Weitere Informationen zum Ändern deiner Proxyeinstellungen findest du unter Konfigurieren eines ausgehenden Webproxyservers.
Wenn diese Einstellungen nicht korrekt konfiguriert sind, könnten Sie beim Festlegen oder Ändern Ihrer GitHub Actions-Konfiguration Fehler wie Resource unexpectedly moved to https://IP-ADDRESS erhalten.
Runners stellen keine Verbindung zu GitHub Enterprise Server unter einem neuen Hostnamen her
Warnung
Ändere den Hostnamen für GitHub Enterprise Server nach der Ersteinrichtung nicht mehr. Das Ändern des Hostnamens wird zu unerwartetem Verhalten führen, bis hin zu Instanzausfällen und der Ungültigkeit der Sicherheitsschlüssel der Benutzer. Wenn Sie den Hostnamen für Ihre Instanz geändert haben und Probleme auftreten, wenden Sie sich an GitHub Enterprise-Support oder GitHub Premium-Support.
Wenn Sie GitHub Enterprise Server in Ihrer Umgebung mit einem neuen Hostnamen bereitstellen und der alte Hostname nicht mehr auf Ihre Instanz verweist, können selbstgehostete Runner keine Verbindung zum alten Hostnamen herstellen und daher keine Jobs ausführen.
Sie müssen die Konfiguration Ihrer selbstgehosteten Runner aktualisieren, sodass sie den neuen Hostnamen für Ihre GitHub Enterprise Server-Instance verwenden. Jeder selbstgehostete Runner erfordert eine der folgenden Vorgehensweisen:
- Bearbeite im Verzeichnis der selbstgehosteten Anwendung die
.runner- und.credentials-Dateien, und ersetze alle Erwähnungen des alten Hostnamens durch den neuen. Starte anschließend die selbstgehostete Runneranwendung neu. - Entfernen Sie den Runner über die Benutzeroberfläche aus GitHub Enterprise Server und fügen Sie ihn erneut hinzu. Weitere Informationen findest du unter Selbst-gehostete Runner entfernen und Selbst-gehostete Runner hinzufügen.
Problembehandlung bei Fehlern, wenn Dependabot vorhandene Workflows auslöst
Nachdem Sie Dependabot Updates für Ihre GitHub Enterprise Server-Instance eingerichtet haben, kann es zu Fehlern kommen, wenn vorhandene Workflows durch Dependabot-Ereignisse ausgelöst werden.
Standardmäßig werden GitHub Actions Workflow-Ausführungen, die durch Dependabot von push, pull_request, pull_request_review oder pull_request_review_comment-Ereignissen ausgelöst werden, so behandelt, als ob sie aus einem Repository-Fork geöffnet worden wären. Im Gegensatz zu Workflows, die von anderen Akteuren ausgelöst werden, bedeutet dies, dass sie ein schreibgeschütztes GITHUB_TOKEN erhalten und keinen Zugriff auf Geheimnisse haben, die normalerweise verfügbar sind. Dies führt dazu, dass alle Workflows, die versuchen, in das Repository zu schreiben, fehlschlagen, wenn sie durch Dependabotausgelöst werden.
Es gibt drei Möglichkeiten, dieses Problem zu beheben:
- Sie können Ihre Workflows so aktualisieren, dass sie nicht länger durch Dependabot ausgelöst werden, und dazu einen Ausdruck wie diesen verwenden:
if: github.actor != 'dependabot[bot]'. Weitere Informationen finden Sie unter Auswerten von Ausdrücken in Workflows und Aktionen. - Du kannst deine Workflows so ändern, dass sie einen zweistufigen Prozess mit
pull_request_targetverwenden, das nicht diesen Einschränkungen unterliegt. Weitere Informationen finden Sie unter Fehlerbehebung für Dependabot in GitHub Actions. - Sie können Workflows bereitstellen, die durch den Zugriff auf Geheimnisse über Dependabot ausgelöst werden, und dem Ausdruck
permissionsermöglichen, den Standardbereich vonGITHUB_TOKENzu erweitern. Weitere Informationen finden Sie unter Bereitstellen von Workflows, die durch Dependabot den Zugriff auf geheime Schlüssel und erhöhte Berechtigungen ausgelöst werden.
Bereitstellen von Workflows, die durch Dependabot den Zugriff auf geheime Schlüssel und erhöhte Berechtigungen ausgelöst werden
-
Melde dich mit SSH bei der Verwaltungsshell an. Weitere Informationen finden Sie unter Auf die Verwaltungsshell (SSH) zugreifen.
-
Verwenden Sie den folgenden Befehl, um die Einschränkungen für Workflows zu entfernen, die von Dependabot auf Ihre GitHub Enterprise Server-Instance ausgelöst werden.
ghe-config app.actions.disable-dependabot-enforcement true -
Wende die Konfiguration an.
ghe-config-apply -
Kehren Sie zu GitHub Enterprise Server zurück.
Fehlerbehebung für gebündelte Aktionen in GitHub Actions
Wenn bei der Installation von GitHub Actions in GitHub Enterprise Server der folgende Fehler auftritt, können Sie das Problem beheben, indem Sie die offiziellen gebündelten Aktionen und Workflow-Vorlagen installieren.
A part of the Actions setup had problems and needs an administrator to resolve.
Gehen Sie wie folgt vor, um die offiziellen gebündelten Aktionen und Workflowvorlagen innerhalb einer festgelegten Organisation in GitHub Enterprise Server zu installieren.
-
Geben Sie eine Organisation an, in der die offiziellen gebündelten Aktionen und Workflowvorlagen gespeichert werden sollen. Du kannst eine neue Organisation erstellen oder eine vorhandene verwenden.
- Informationen zum Erstellen einer neuen Organisation findest du unter Eine neue Organisation von Grund auf erstellen.
- Unterstützung beim Auswählen eines Namens für diese Organisation findest du unter Erste Schritte mit GitHub Actions für GitHub Enterprise Server.
-
Melde dich mit SSH bei der Verwaltungsshell an. Weitere Informationen finden Sie unter Auf die Verwaltungsshell (SSH) zugreifen.
-
Um deine Organisation als Speicherort für gebündelte Aktionen festzulegen, verwende den Befehl
ghe-configaus, indem duORGANIZATIONdurch den Namen deiner Organisation ersetzt.ghe-config app.actions.actions-org ORGANIZATIONund:
ghe-config app.actions.github-org ORGANIZATION -
Um die gebündelten Aktionen zu deiner Organisation hinzuzufügen, lösche den SHA-Wert.
ghe-config --unset 'app.actions.actions-repos-sha1sum' -
Wende die Konfiguration an.
ghe-config-apply
Nachdem Sie diese Schritte abgeschlossen haben, können Sie die Konfiguration GitHub Actions bei Erste Schritte mit GitHub Actions für GitHub Enterprise Server fortsetzen.