Skip to main content

Respaldar y restablecer GitHub Enterprise Server con GitHub Actions habilitadas

Para restaurar una copia de seguridad de your GitHub Enterprise Server instance cuando GitHub Actions está habilitado, debes configurar GitHub Actions antes de restaurar la copia de seguridad con GitHub Enterprise Server Backup Utilities.

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 your GitHub Enterprise Server instance en una nueva instancia. Para más información, vea "Configuración de copias de seguridad en el dispositivo".

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, 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 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 your GitHub Enterprise Server instance 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.

  1. Confirma que la instancia de origen está sin conexión.

  2. 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 más información, vea "Definición de la configuración de red".

  3. SSH en la instancia de destino. Para obtener más información, consulte"Acceso al shell administrativo (SSH)".

    Shell
    $ ssh -p 122 admin@HOSTNAME
  4. 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"
    • Amazon S3:

      Shell
      ghe-config secrets.actions.storage.blob-provider "s3"
      ``` 1. 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"
    • 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"

      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
  5. Para preparar la habilitación de GitHub Actions en la instancia de destino, escriba el comando siguiente.

    Shell
    ghe-config app.actions.enabled true
  6. To apply the configuration and enable GitHub Actions to connect to your external storage provider, enter the following command.

    Shell
    ghe-config-apply
  7. 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 más información, vea "Restauración de una copia de seguridad".

  8. Vuelve a registrar tus ejecutores autohospedados en la instancia de destino. Para más información, vea "Adición de ejecutores autohospedados".