Acerca de las copias de seguridad de GitHub Enterprise Server al usar GitHub Actions
Puedes usar GitHub Enterprise Server Backup Utilities para realizar copias de seguridad y restaurar los datos y la configuración de tu instancia de GitHub Enterprise Server en una nueva instancia. Para obtener más información, vea «Configuración de copias de seguridad en la instancia».
Pero no todos los datos de GitHub Actions se incluyen en estas copias de seguridad. Las GitHub Actions utilizan almacenamiento externo para almacenar artefactos de flujo de trabajo y bitácoras. Estos datos se almacenan en el proveedor externo, como Azure Blob Storage, Amazon S3, Google Cloud Storage, o MinIO. Como resultado, las copias de seguridad de GitHub Enterprise Server y sus configuraciones de disponibilidad GitHub Enterprise Server alta no proporcionan protección para los datos que se almacenan en este servicio externo y, en vez de esto, dependen de la protección de datos y replicación que proporciona el proveedor de almacenamiento externo, como Azure, Google Cloud o AWS.
Restauración de una copia de seguridad de GitHub Enterprise Server cuando GitHub Actions está habilitado
Para restaurar una copia de seguridad de tu instancia de GitHub Enterprise Server con GitHub Actions, debes configurar manualmente la configuración de red y el almacenamiento externo en la instancia de destino antes de restaurar la copia de seguridad desde GitHub Enterprise Server Backup Utilities.
-
Confirma que la instancia de origen está sin conexión.
-
Configura manualmente los ajustes de red en la instancia de reemplazo de GitHub Enterprise Server. La configuración de red se excluye de la instantánea de copia de seguridad y no se sobrescribe mediante
ghe-restore
. Para obtener más información, vea «Definición de la configuración de red». -
SSH en la instancia de destino. Para obtener más información, vea «Acceder al shell administrativo (SSH)».
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Configura la instancia de destino para usar el mismo servicio de almacenamiento externo para GitHub Actions que la instancia de origen escribiendo uno de los comandos siguientes.
-
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"
-
-
Configura la conexión de almacenamiento externo con los comandos siguientes, reemplazando los valores de marcador de posición por los valores reales de la conexión.
-
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"
Opcionalmente, para forzar el direccionamiento con estilo de ruta de acceso para S3, especifica también el comando siguiente.
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"
-
-
Para preparar la habilitación de GitHub Actions en la instancia de destino, escriba el comando siguiente.
Shell ghe-config app.actions.enabled true
ghe-config app.actions.enabled true
-
Si deseas aplicar la configuración y permitir que GitHub Actions se conecte al proveedor de almacenamiento externo, escribe el comando siguiente.
Shell ghe-config-apply
ghe-config-apply
-
Después de configurar y habilitar GitHub Actions, usa el comando
ghe-restore
para restaurar el resto de los datos desde la copia de seguridad. Para obtener más información, vea «Configuración de copias de seguridad en la instancia». -
Vuelve a registrar tus ejecutores autohospedados en la instancia de destino. Para obtener más información, vea «Agrega ejecutores auto-hospedados».
-
Opcionalmente, para asegurarse de que las acciones agrupadas que están preinstaladas en la nueva instancia están actualizadas, escriba el siguiente comando.
Shell ghe-config --unset 'app.actions.actions-repos-sha1sum'
ghe-config --unset 'app.actions.actions-repos-sha1sum'
-
Para aplicar la configuración, ejecuta el siguiente comando.
Nota: Durante la ejecución de una configuración, los servicios de tu instancia de GitHub Enterprise Server pueden reiniciarse, y esto puede provocar un breve tiempo de inactividad para los usuarios.
Shell ghe-config-apply
ghe-config-apply
-
Espera que se complete la fase de configuración.
-