Informationen zu Sicherungen von GitHub Enterprise Server bei Verwendung von GitHub Actions
Du kannst GitHub Enterprise Server Backup Utilities verwenden, um die Daten und die Konfiguration für Ihre GitHub Enterprise Server-Instance in einer neuen Instanz zu sichern und wiederherzustellen. Weitere Informationen findest du unter Konfigurieren von Sicherungen auf einer Instanz.
Allerdings sind nicht alle Daten für GitHub Actions in diesen Sicherungen enthalten. GitHub Actions verwendet externen Speicher zum Speichern von Workflowartefakten und Protokollen. Diese Daten werden bei deinem externen Anbieter gespeichert, z. B. Azure Blob Storage, Amazon S3, Google Cloud Storage oder MinIO. Folglich werden die in einem externen Speicher gespeicherten Daten nicht durch GitHub Enterprise Server-Sicherungen und GitHub Enterprise Server-Hochverfügbarkeitskonfigurationen geschützt, sondern hängen stattdessen von der Datensicherung und -replikation des externen Speicheranbieters wie Azure, Google Cloud oder AWS ab.
Wiederherstellen einer Sicherung von GitHub Enterprise Server, wenn GitHub Actions aktiviert ist
Um eine Sicherung von Ihre GitHub Enterprise Server-Instance mit GitHub Actions wiederherzustellen, musst du die Netzwerkeinstellungen und den externen Speicher auf der Zielinstanz manuell konfigurieren, bevor du deine Sicherung aus GitHub Enterprise Server Backup Utilities wiederherstellst.
-
Vergewissere dich, dass die Quellinstanz offline ist.
-
Führe eine manuelle Konfiguration der Netzwerkeinstellungen auf der GitHub Enterprise Server-Ersatzinstanz durch. Netzwerkeinstellungen sind aus der Sicherungsmomentaufnahme ausgeschlossen und werden von
ghe-restore
nicht überschrieben. Weitere Informationen findest du unter Konfigurieren von Netzwerkeinstellungen. -
Stelle eine SSH-Verbindung mit der Zielinstanz her. Weitere Informationen findest du unter Auf die Verwaltungsshell (SSH) zugreifen.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Konfiguriere die Zielinstanz so, dass sie denselben externen Speicherdienst für GitHub Actions verwendet wie die Quellinstanz, indem du einen der folgenden Befehle eingibst.
-
Azure Blob Storage:
Shell ghe-config secrets.actions.storage.blob-provider "azure"
ghe-config secrets.actions.storage.blob-provider "azure"
-
Amazon S3:
Shell ghe-config secrets.actions.storage.blob-provider "s3"
ghe-config secrets.actions.storage.blob-provider "s3"
-
Google Cloud Storage:
Shell ghe-config secrets.actions.storage.blob-provider "gcs" ``` 1. Konfiguriere die Verbindung mit dem externen Speicher, indem du die folgenden Befehle eingibst und dabei die Platzhalterwerte durch die tatsächlichen Werte für deine Verbindung ersetzt.
ghe-config secrets.actions.storage.blob-provider "gcs" ``` 1. Konfiguriere die Verbindung mit dem externen Speicher, indem du die folgenden Befehle eingibst und dabei die Platzhalterwerte durch die tatsächlichen Werte für deine Verbindung ersetzt.
-
Azure Blob Storage:
Shell ghe-config secrets.actions.storage.azure.connection-string "CONNECTION STRING"
ghe-config secrets.actions.storage.azure.connection-string "CONNECTION STRING"
-
Amazon S3:
Shell ghe-config secrets.actions.storage.s3.bucket-name "S3 BUCKET NAME" ghe-config secrets.actions.storage.s3.service-url "S3 SERVICE URL" ghe-config secrets.actions.storage.s3.access-key-id "S3 ACCESS KEY ID" ghe-config secrets.actions.storage.s3.access-secret "S3 ACCESS SECRET"
ghe-config secrets.actions.storage.s3.bucket-name "S3 BUCKET NAME" ghe-config secrets.actions.storage.s3.service-url "S3 SERVICE URL" ghe-config secrets.actions.storage.s3.access-key-id "S3 ACCESS KEY ID" ghe-config secrets.actions.storage.s3.access-secret "S3 ACCESS SECRET"
Optional kannst du auch den folgenden Befehl eingeben, um die Adressierung von S3 im Pfadformat zu erzwingen.
Shell ghe-config secrets.actions.storage.s3.force-path-style true
ghe-config secrets.actions.storage.s3.force-path-style true
-
Google Cloud Storage:
Shell ghe-config secrets.actions.storage.gcs.service-url "SERVICE URL" ghe-config secrets.actions.storage.gcs.bucket-name "BUCKET NAME" ghe-config secrets.actions.storage.gcs.access-key-id "HMAC ACCESS ID" ghe-config secrets.actions.storage.gcs.access-secret "HMAC SECRET"
ghe-config secrets.actions.storage.gcs.service-url "SERVICE URL" ghe-config secrets.actions.storage.gcs.bucket-name "BUCKET NAME" ghe-config secrets.actions.storage.gcs.access-key-id "HMAC ACCESS ID" ghe-config secrets.actions.storage.gcs.access-secret "HMAC SECRET"
-
-
Um die Aktivierung von GitHub Actions auf der Zielinstanz vorzubereiten, gibst du den folgenden Befehl ein.
Shell ghe-config app.actions.enabled true
ghe-config app.actions.enabled true
-
Um die Konfiguration anzuwenden und GitHub Actions die Verbindung mit deinem externen Speicheranbieter zu ermöglichen, gib den folgenden Befehl ein.
Shell ghe-config-apply
ghe-config-apply
-
Nachdem GitHub Actions konfiguriert und aktiviert wurde, kannst du mit dem Befehl
ghe-restore
die übrigen Daten aus der Sicherung wiederherstellen. Weitere Informationen findest du unter Konfigurieren von Sicherungen auf einer Instanz. -
Registriere deine selbstgehosteten Runner auf der Zielinstanz neu. Weitere Informationen findest du unter Selbst-gehostete Runner hinzufügen.
-
Um sicherzustellen, dass die in der neuen Instanz vorinstallierten gebündelten Aktionen auf dem neuesten Stand sind, geben Sie den folgenden Befehl ein.
Shell ghe-config --unset 'app.actions.actions-repos-sha1sum'
ghe-config --unset 'app.actions.actions-repos-sha1sum'
-
Führe den folgenden Befehl aus, um die Konfiguration anzuwenden.
Note
Während einer Konfigurationsausführung können die Dienste auf Ihre GitHub Enterprise Server-Instance neu gestartet werden, was zu kurzen Ausfallzeiten für Benutzer führen kann.
Shell ghe-config-apply
ghe-config-apply
-
Warten Sie auf den Abschluss der Konfigurationsausführung.
-