GitHub Actions を使用する場合の GitHub Enterprise Server のバックアップについて
GitHub Enterprise Server Backup Utilities を使って、お使いの GitHub Enterprise Server インスタンスのデータと構成をバックアップし、新しいインスタンスに復元できます。 詳しくは、「インスタンスでのバックアップの構成」を参照してください。
ただし、GitHub Actions のすべてのデータがこれらのバックアップに含まれるわけではありません。 GitHub Actionsは、ワークフローの成果物とログを保存するのに外部ストレージを使用します。 このデータは、Azure BLOB ストレージ、Amazon S3、 Google Cloud Storage、または MinIO などの外部プロバイダーに格納されます。 その結果、GitHub Enterprise Server のバップアップと GitHub Enterprise Server の高可用性構成は、この外部ストレージに保存されたデータに対する保護を提供せず、そのかわりに Azure、Google Cloud、 または AWS といった外部ストレージのプロバイダーが提供するデータ保護およびレプリケーションに依存します。
GitHub Actions が有効になっているときに GitHub Enterprise Server のバックアップを復元する
GitHub Actions を使って お使いの GitHub Enterprise Server インスタンスのバックアップを復元するには、GitHub Enterprise Server Backup Utilities からバックアップを復元する前に、復元先インスタンスでネットワーク設定と外部ストレージを手動で構成する必要があります。
-
復元元インスタンスがオフラインであることを確認します。
-
交換する GitHub Enterprise Server インスタンスで、ネットワーク設定を手動で構成します。 ネットワーク設定はバックアップスナップショットから除外され、
ghe-restore
で上書きされません。 詳しくは、「ネットワーク設定の構成」を参照してください。 -
復元先インスタンスに SSH で接続します。 詳しくは、「管理シェル (SSH) にアクセスする」を参照してください。
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
次のいずれかのコマンドを入力して、復元元インスタンスと同じ外部ストレージ サービスを GitHub Actions に対して使うように、復元先インスタンスを構成します。
-
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"
ghe-config secrets.actions.storage.blob-provider "gcs"
-
-
次のコマンドを入力して外部ストレージ接続を構成し、プレースホルダーの値を実際の接続の値に置き換えます。
-
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"
必要に応じて、S3 のパス スタイルのアドレス指定を強制するには、次のコマンドも入力します。
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"
-
-
復元先インスタンスで GitHub Actions を有効にする準備をするには、次のコマンドを入力します。
Shell ghe-config app.actions.enabled true
ghe-config app.actions.enabled true
-
構成を適用して GitHub Actions が外部ストレージ プロバイダーに接続できるようにするには、次のコマンドを入力します。
Shell ghe-config-apply
ghe-config-apply
-
GitHub Actions を構成して有効にした後、残りのデータをバックアップから復元するには、
ghe-restore
コマンドを使います。 詳しくは、「インスタンスでのバックアップの構成」を参照してください。 -
復元先インスタンスで、セルフホステッド ランナーをもう一度登録します。 詳しくは、「自己ホストランナーの追加」を参照してください。
-
必要に応じて、新しいインスタンスにプレインストールされているバンドルされたアクションが最新であることを確認する には、次のコマンドを入力します。
ghe-config --unset 'app.actions.actions-repos-sha1sum'
ghe-config --unset 'app.actions.actions-repos-sha1sum'
-
構成を適用するには、次のコマンドを実行します。
注: 構成の実行中に、お使いの GitHub Enterprise Server インスタンス 上のサービスが再起動する可能性があり、これによりユーザーに短時間のダウンタイムが発生する場合があります。
Shell ghe-config-apply
ghe-config-apply
-
設定の実行が完了するのを待ってください。