Skip to main content

Sauvegarde et restauration de GitHub Enterprise Server avec GitHub Actions activé

Pour restaurer une sauvegarde de votre instance GitHub Enterprise Server lorsque GitHub Actions est activé, vous devez configurer GitHub Actions avant de restaurer la sauvegarde avec GitHub Enterprise Server Backup Utilities.

À propos des sauvegardes de GitHub Enterprise Server lors de l’utilisation de GitHub Actions

Vous pouvez utiliser GitHub Enterprise Server Backup Utilities pour sauvegarder et restaurer les données et la configuration de votre instance GitHub Enterprise Server dans une nouvelle instance. Pour plus d’informations, consultez « Configuration des sauvegardes sur votre instance ».

Toutefois, les données de GitHub Actions ne sont pas toutes incluses dans ces sauvegardes. GitHub Actions utilise un stockage externe pour stocker les artefacts et journaux de workflow. Ces données sont stockées chez votre fournisseur externe, par exemple Stockage Blob Azure, Amazon S3, Google Cloud Storage, ou MinIO. Les sauvegardes de GitHub Enterprise Server et les configurations à haute disponibilité de GitHub Enterprise Server n’offrent donc aucune protection pour les données stockées sur ce stockage externe. À la place, des services de protection et de réplication des données sont assurés par le fournisseur de stockage externe, par exemple Azure, Google Cloud, ou AWS.

Restauration d’une sauvegarde de GitHub Enterprise Server lorsque GitHub Actions est activé

Pour restaurer une sauvegarde de votre instance GitHub Enterprise Server avec GitHub Actions, vous devez configurer manuellement les paramètres réseau et le stockage externe sur l’instance de destination avant de restaurer votre sauvegarde à partir de GitHub Enterprise Server Backup Utilities.

  1. Vérifiez que l’instance source est hors connexion.

  2. Configurez manuellement les paramètres réseau sur l’instance GitHub Enterprise Server de remplacement. Les paramètres réseau sont exclus de l’instantané de sauvegarde et ne sont pas remplacés par ghe-restore. Pour plus d’informations, consultez « Configuration des paramètres réseau ».

  3. SSH dans l’instance de destination. Pour plus d’informations, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

    Shell
    ssh -p 122 admin@HOSTNAME
    
  4. Configurez l’instance de destination pour utiliser le même service de stockage externe pour GitHub Actions que l’instance source en entrant l’une des commandes suivantes.

    • Stockage Blob Azure :

      Shell
      ghe-config secrets.actions.storage.blob-provider "azure"
      
    • Amazon S3 :

      Shell
      ghe-config secrets.actions.storage.blob-provider "s3"
      
    • Google Cloud Storage :

      Shell
      ghe-config secrets.actions.storage.blob-provider "gcs"
      
  5. Configurez la connexion au stockage externe en entrant les commandes suivantes, et en remplaçant les valeurs d’espace réservé par les valeurs réelles de votre connexion.

    • Stockage Blob Azure :

      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"
      

      Le cas échéant, si vous souhaitez forcer l’adressage du style de chemin pour S3, entrez également la commande suivante.

      Shell
      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"
      
  6. Pour préparer l’activation de GitHub Actions sur l’instance de destination, entrez la commande suivante.

    Shell
    ghe-config app.actions.enabled true
    
  7. Pour appliquer la configuration et permettre à GitHub Actions de se connecter à votre fournisseur de stockage externe, entrez la commande suivante.

    Shell
    ghe-config-apply
    
  8. Après avoir configuré et activé GitHub Actions, utilisez la commande ghe-restore pour restaurer le reste des données de la sauvegarde. Pour plus d’informations, consultez « Configuration des sauvegardes sur votre instance ».

  9. Réinscrivez vos exécuteurs auto-hébergés sur l’instance de destination. Pour plus d’informations, consultez « Ajout d’exécuteurs auto-hébergés ».

  10. Si vous le souhaitez, pour vous assurer que les actions regroupées préinstallées sur votre nouvelle instance sont à jour, saisissez la commande suivante.

    Shell
    ghe-config --unset 'app.actions.actions-repos-sha1sum'
    
    1. Pour appliquer la configuration, exécutez la commande suivante.

      Remarque : Durant une exécution de configuration, les services sur votre instance GitHub Enterprise Server peuvent redémarrer, ce qui peut entraîner un bref temps d’arrêt pour les utilisateurs.

      Shell
      ghe-config-apply
      
    2. Attendez la fin de l’exécution de la configuration.