Skip to main content

Cette version de GitHub Enterprise Server n'est plus disponible depuis le 2024-03-26. Aucune publication de correctifs n’est effectuée, même pour les problèmes de sécurité critiques. Pour de meilleures performances, une sécurité améliorée et de nouvelles fonctionnalités, effectuez une mise à niveau vers la dernière version de GitHub Enterprise. Pour obtenir de l’aide sur la mise à niveau, contactez le support GitHub Enterprise.

Activation de GitHub Actions avec Stockage Blob Azure

Vous pouvez activer GitHub Actions sur GitHub Enterprise Server, et utiliser le service Stockage Blob Azure pour stocker les données générées par les exécutions de workflow.

Qui peut utiliser cette fonctionnalité ?

Site administrators can enable GitHub Actions and configure enterprise settings.

À propos du stockage externe pour GitHub Actions

GitHub Actions utilise le stockage blob externe pour stocker les données générées par les exécutions de workflow. Les données stockées incluent les journaux de workflow, les caches, et les artefacts de build chargés par l’utilisateur. Pour plus d’informations, consultez « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server ».

Il existe deux options pour configurer GitHub Enterprise Server en vue de se connecter à votre fournisseur de stockage externe :

  • OpenID Connect (OIDC)
  • Authentification traditionnelle basée sur des informations d’identification à l’aide de secrets

Nous vous recommandons d’utiliser OIDC dans la mesure du possible, car vous n’aurez pas besoin de créer ou de gérer des secrets d’informations d’identification sensibles et de longue durée pour votre fournisseur de stockage, et risquer qu’ils soient exposés. Après avoir défini une confiance avec OIDC, votre fournisseur de stockage cloud émet automatiquement des jetons d’accès de courte durée sur votre instance GitHub Enterprise Server, qui expirent automatiquement.

Prérequis

Avant d’activer GitHub Actions, vérifiez que vous avez effectué les étapes suivantes :

  • Créer votre compte de stockage Azure pour stocker des données de workflow. GitHub Actions stocke ses données sous forme d’objets blob de blocs, et deux types de comptes de stockage sont pris en charge :

    • Un compte de stockage universel (aussi appelé general-purpose v1 ou general-purpose v2) avec le niveau de performance standard .

      Avertissement : L’utilisation du niveau de performance premium avec un compte de stockage universel n’est pas prise en charge. Le niveau de performance standard doit être sélectionné au moment de créer le compte de stockage, et il n’est pas possible de le modifier ultérieurement.

    • Un compte de stockage BlockBlobStorage, qui utilise le niveau de performance premium.

    Pour plus d’informations sur les types de comptes de stockage Azure et les niveaux de performance, consultez la documentation Azure.

  • Passez en revue les exigences matérielles relatives à GitHub Actions. Pour plus d’informations, consultez « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server ».

  • TLS doit être configuré pour le domaine de votre instance GitHub Enterprise Server. Pour plus d’informations, consultez « Configuration de TLS ».

    Remarque : Nous vous recommandons vivement de configurer TLS sur GitHub Enterprise Server avec un certificat signé par une autorité de confiance. Bien qu’un certificat autosigné puisse fonctionner, une configuration supplémentaire est nécessaire pour vos exécuteurs autohébergés. Elle n’est pas recommandée pour les environnements de production.

  • Si vous avez un serveur proxy HTTP configuré sur votre instance GitHub Enterprise Server :

  • Vous devez ajouter .localhost et 127.0.0.1 à la liste Exclusion du proxy HTTP.

  • Si votre emplacement de stockage externe n’est pas routable, vous devez également ajouter l’URL de votre stockage externe à la liste d’exclusion.

Pour plus d’informations sur la modification de vos paramètres de proxy, consultez « Configuration d’un serveur proxy web de trafic sortant ».

  • Si vous utilisez OIDC pour la connexion à votre fournisseur de stockage, vous devez exposer les URL de service de jeton OIDC suivantes de votre instance GitHub Enterprise Server sur l’Internet public :

    https://HOSTNAME/_services/token/.well-known/openid-configuration
    https://HOSTNAME/_services/token/.well-known/jwks
    

    Cela garantit que le fournisseur de stockage peut contacter votre instance GitHub Enterprise Server pour l’authentification.

Activation de GitHub Actions avec Azure Storage Blob à l’aide d’OIDC (recommandé)

Pour configurer GitHub Enterprise Server afin d’utiliser OIDC avec un compte de stockage Azure, vous devez d’abord inscrire une application Microsoft Entra ID (précédemment appelé Azure AD) avec les informations d’identification OIDC, puis configurer votre compte de stockage. Vous devez enfin configurer GitHub Enterprise Server afin d’accéder au conteneur de stockage à l’aide de l’application Entra ID.

1. Enregistrer une application Entra ID

  1. Connectez-vous au Centre d’administration Microsoft Entra.

  2. Enregistrez une nouvelle application dans Entra ID. Pour plus d’informations, voir Démarrage rapide : enregistrer une application avec la plateforme d’identité Microsoft sur Microsoft Learn.

  3. Dans votre application Entra ID, sous « Informations de base », notez les valeurs affectées à « ID d’application (client) » et « ID d’annuaire (locataire) ». Ces valeurs sont utilisées par la suite.

    Capture d’écran de la page « Présentation » dans Entra ID. Les quatre premiers éléments de la section « Informations de base » sont mis en évidence à l’aide d’un rectangle orange.

  4. Dans votre application Entra ID, sous « Gérer », cliquez sur Certificats et secrets, sélectionnez l’onglet Informations d’identification fédérées, puis cliquez sur Ajouter des informations d’identification.

    Capture d’écran de la page « Informations d’identification fédérées » dans Entra ID. L’onglet « Certificats et secrets », l’onglet « Informations d’identification fédérées » et le bouton « Ajouter des informations d’identification » sont mis en évidence à l’aide de rectangles orange.

  5. Entrez les détails suivants pour les informations d’identification :

    1. Pour « Scénario d’informations d’identification fédérées », sélectionnez Autre émetteur.

    2. Pour « Émetteur », entrez https://HOSTNAME/_services/token, où HOSTNAME est le nom d’hôte public pour votre instance GitHub Enterprise Server. Par exemple : https://my-ghes-host.example.com/_services/token.

    3. Pour « Identificateur du sujet », entrez le nom d’hôte public pour votre instance GitHub Enterprise Server. Par exemple : my-ghes-host.example.com.

      Remarque : L’identificateur du sujet doit uniquement avoir le nom d’hôte de votre instance GitHub Enterprise Server et ne doit pas inclure le protocole.

    4. Pour « Nom », entrez un nom pour les informations d’identification.

    5. Cliquez sur Add.

2. Configurer votre compte de stockage

  1. Dans le portail Microsoft Azure, accédez à votre compte de stockage.

  2. Cliquez sur Contrôle d’accès (IAM) , sur Ajouter, puis sélectionnez Ajouter une attribution de rôle.

  3. Pour le rôle, sélectionnez « Propriétaire des données blob du stockage », puis cliquez sur Suivant.

  4. Pour les membres, cliquez sur Sélectionner des membres, puis recherchez et sélectionnez le nom de l’application Entra ID que vous avez créée précédemment. Cliquez sur Sélectionner.

  5. Cliquez sur Vérifier + affecter, passez en revue l’attribution de rôle, puis cliquez à nouveau sur Vérifier + affecter.

  6. Dans le menu de gauche, sous « Paramètres », cliquez sur Points de terminaison.

  7. Sous « Service Blob », notez la valeur de « Service Blob », en particulier le suffixe du point de terminaison d’objet blob. Il s’agit de la valeur après https://<storageaccountname>.blob. Il s’agit généralement de core.windows.net, mais cela peut varier en fonction de votre région Azure ou de votre type de compte.

    Par exemple, si l’URL de votre service blob est https://my-storage-account.blob.core.windows.net, le suffixe du point de terminaison d’objet blob est core.windows.net.

    Notez le nom de votre compte de stockage et le suffixe du point de terminaison d’objet blob, car vous en aurez besoin par la suite.

3. Configuration de GitHub Enterprise Server pour se connecter à Entra ID à l’aide d’OIDC

  1. À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.

  2. Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.

  3. Dans la barre latérale «  Administrateur de site », cliquez sur Management Console .

  4. Dans la barre latérale « Paramètres », cliquez sur Actions.

  5. Sous « GitHub Actions », sélectionnez Activer GitHub Actions.

  6. Sous « Artefact et stockage des journaux », à côté de « Stockage Blob Azure », cliquez sur Configurer.

  7. Sous « Authentification », sélectionnez OpenID Connect (OIDC) et entrez les valeurs de votre stockage que vous avez notées dans les procédures précédentes :

    • ID de locataire Entra ID
    • ID client Entra ID
    • Nom du compte de stockage Azure
    • Suffixe du point de terminaison d’objet blob 1. Cliquez sur le bouton Tester les paramètres de stockage pour valider vos paramètres de stockage.

    En cas d’erreurs au moment de la validation des paramètres de stockage, vérifiez ces paramètres auprès de votre fournisseur de stockage, puis réessayez.

  8. Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.

    Remarque : l’enregistrement des paramètres dans la Management Console redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.

  9. Attendez la fin de l’exécution de la configuration.

Activation de GitHub Actions avec Stockage Blob Azure à l’aide d’une chaîne de connexion

  1. À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.

  2. Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.

  3. Dans la barre latérale «  Administrateur de site », cliquez sur Management Console .

  4. Dans la barre latérale « Paramètres », cliquez sur Actions.

  5. Sous « GitHub Actions », sélectionnez Activer GitHub Actions.

  6. Sous « Artefact et stockage des journaux », à côté de « Stockage Blob Azure », cliquez sur Configurer.

  7. Sous « Authentification », sélectionnez Basée sur les informations d’identification, puis entrez la chaîne de connexion de votre compte de stockage Azure. Pour plus d’informations sur l’obtention de la chaîne de connexion de votre compte de stockage, consultez la documentation Azure.

  8. Cliquez sur le bouton Tester les paramètres de stockage pour valider vos paramètres de stockage.

    En cas d’erreurs au moment de la validation des paramètres de stockage, vérifiez ces paramètres auprès de votre fournisseur de stockage, puis réessayez.

  9. Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.

    Remarque : l’enregistrement des paramètres dans la Management Console redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.

  10. Attendez la fin de l’exécution de la configuration.

Étapes suivantes

Une fois l’exécution de la configuration réussie, GitHub Actions est activé sur votre instance GitHub Enterprise Server. Pour les prochaines étapes, par exemple la gestion des autorisations d’accès de GitHub Actions et l’ajout d’exécuteurs autohébergés, retournez à « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server ».