À propos des exécuteurs auto-hébergés pour GitHub Actions
GitHub Actions permet aux utilisateurs de votre entreprise d'améliorer leur productivité en automatisant chaque phase du workflow de développement logiciel. Pour plus d’informations, consultez « À propos de GitHub Actions pour les entreprises ».
Avec GitHub Actions, les développeurs peuvent écrire et combiner des tâches individuelles appelées actions pour créer des workflows personnalisés. Pour activer GitHub Actions pour votre instance GitHub Enterprise Server, vous devez héberger au moins un ordinateur pour l’exécution des travaux. Cet ordinateur s’appelle un exécuteur auto-hébergé. Les exécuteurs auto-hébergés peuvent être physiques ou virtuels, et se trouver dans un conteneur, localement ou dans un cloud. Votre machine d’exécuteur se connecte à GitHub Enterprise Server à l’aide de l’application d’exécuteur autohébergé de GitHub Actions. Les exécuteurs auto-hébergés peuvent exécuter Linux, Windows ou macOS. Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».
Ce guide vous montre comment appliquer une approche de gestion centralisée des exécuteurs auto-hébergés pour GitHub Actions dans votre entreprise. Dans ce guide, vous allez effectuer les tâches suivantes.
- Configurer une stratégie limitée pour restreindre les actions qui peuvent s’exécuter dans votre entreprise
- Déployer un exécuteur auto-hébergé pour votre entreprise
- Créer un groupe pour gérer l’accès aux exécuteurs accessibles à votre entreprise
- Éventuellement, limiter un peu plus les dépôts qui peuvent utiliser l’exécuteur
- En option, pour générer et mettre à l’échelle automatiquement des exécuteurs auto-hébergés, utilisez Actions Runner Controller (ARC). Pour plus d’informations, consultez « À propos d’Actions Runner Controller ».
Vous trouverez aussi des informations supplémentaires sur la façon de superviser et de sécuriser vos exécuteurs auto-hébergés, d’accéder aux actions de GitHub.com, et de personnaliser les logiciels sur vos ordinateurs exécuteurs.
À l’issue de ce guide, les utilisateurs de votre instance GitHub Enterprise Server pourront exécuter des travaux de workflow à partir de GitHub Actions sur un ordinateur exécuteur auto-hébergé.
Prérequis
-
GitHub Actions doit être activé pour GitHub Enterprise Server. Un administrateur de site peut activer et configurer GitHub Actions pour votre instance. Pour plus d’informations, consultez « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server ».
-
Vous devez avoir accès à la machine que vous allez utiliser en tant qu’exécuteur auto-hébergé dans votre environnement.
- La connexion entre exécuteurs auto-hébergés et GitHub Enterprise Server passe via HTTP (port 80) ou HTTPS (port 443). Pour garantir la connectivité via HTTPS, configurez le protocole TLS pour GitHub Enterprise Server. Pour plus d’informations, consultez « Configuration de TLS ».
- Votre entreprise doit être propriétaire d’au moins une organisation. Pour plus d’informations, consultez « À propos des organisations » et « Création d’une organisation à partir de zéro ».
1. Configurer des stratégies pour GitHub Actions
Tout d’abord, activez GitHub Actions pour toutes les organisations et configurez une stratégie de restriction pour les actions qui peuvent s’exécuter sur votre instance GitHub Enterprise Server. Les propriétaires d’organisation ont la possibilité de restreindre davantage ces stratégies pour chaque organisation.
-
Dans le coin supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Paramètres d’entreprise.
-
Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.
-
Sous « Stratégies », cliquez sur Actions.
-
Sous « Stratégies », sélectionnez Activer pour toutes les organisations.
-
Pour activer les actions locales et les actions créées par GitHub, sélectionnez Autoriser les actions sélectionnées, puis Autoriser les actions créées par GitHub .
-
Cliquez sur Enregistrer.
Vous pouvez configurer des stratégies supplémentaires pour limiter les actions accessibles aux utilisateurs de votre instance GitHub Enterprise Server. Pour plus d’informations, consultez « Application de stratégies pour GitHub Actions dans votre entreprise ».
2. Déployer l’exécuteur auto-hébergé pour votre entreprise
Maintenant, ajoutez un exécuteur auto-hébergé à votre entreprise. GitHub Enterprise Server vous guidera tout au long de l’installation des logiciels nécessaires sur l’ordinateur exécuteur. Après avoir déployé l’exécuteur, vous pouvez vérifier la connectivité entre l’ordinateur exécuteur et votre instance GitHub Enterprise Server.
Ajout de l’exécuteur auto-hébergé
-
Dans le coin supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Paramètres d’entreprise.
-
Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.
-
Sous « Stratégies », cliquez sur Actions.
-
Cliquez sur l’onglet Exécuteurs.
-
Cliquez sur Nouvel exécuteur. 1. Sélectionnez l’image et l’architecture du système d’exploitation de votre machine d’exécuteur auto-hébergée.
-
Des instructions vous montrent comment télécharger l’application d’exécuteur et l’installer sur votre machine d’exécuteur auto-hébergée.
Ouvrez un interpréteur de commandes sur votre machine d’exécuteur auto-hébergée et exécutez toutes les commandes shell dans l’ordre indiqué.
Remarque : Sur Windows, si vous souhaitez installer l’application d’exécuteur auto-hébergée en tant que service, vous devez ouvrir un interpréteur de commandes avec des privilèges d’administrateur. Nous vous recommandons également d’utiliser
C:\actions-runner
comme répertoire pour l’application de l’exécuteur auto-hébergé afin que les comptes système Windows puissent accéder au répertoire de l’exécuteur.Les instructions vous guident tout au long des tâches suivantes :
- Téléchargement et extraction de l’application d’exécuteur auto-hébergée.
- Exécution du script
config
pour configurer l’application d’exécuteur auto-hébergée et l’inscrire auprès de GitHub Actions. L’URL de destination et un jeton limité dans le temps généré automatiquement sont nécessaires pour permettre au scriptconfig
d’authentifier la demande.- Sur Windows, le script
config
vous demande également si vous souhaitez installer l’application d’exécuteur auto-hébergée en tant que service. Pour Linux et macOS, vous pouvez installer un service une fois que vous avez terminé d’ajouter l’exécuteur. Pour plus d’informations, consultez « Configuration de l’application d’exécuteur auto-hébergé en tant que service ».
- Sur Windows, le script
- Exécution de l’application d’exécuteur auto-hébergée pour connecter la machine à GitHub Actions.
Vérification de la réussite de l’ajout de votre exécuteur autohébergé
Après avoir effectué les étapes pour ajouter un exécuteur autohébergé, l’exécuteur et son statut sont listés sous « Exécuteurs autohébergé ».
L’application de l’exécuteur autohébergée doit être active pour que l’exécuteur accepte les travaux. Quand l’application d’exécuteur est connectée à GitHub Enterprise Server et qu’elle est prête à recevoir des travaux, le message suivant s’affiche sur le terminal de la machine.
√ Connected to GitHub
2019-10-24 05:45:56Z: Listening for Jobs
3. Gérer l’accès à l’exécuteur auto-hébergé en utilisant un groupe
Vous pouvez créer un groupe d’exécuteurs pour gérer l’accès à l’exécuteur que vous avez ajouté à votre entreprise. Le groupe vous permettra de choisir les organisations qui peuvent exécuter des travaux de GitHub Actions sur l’exécuteur.
GitHub Enterprise Server ajoute tous les nouveaux exécuteurs à un groupe. Les exécuteurs peuvent appartenir à un seul groupe à la fois. Par défaut, GitHub Enterprise Server ajoute de nouveaux exécuteurs au groupe « Par défaut ».
-
Dans le coin supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Paramètres d’entreprise.
-
Sur le côté gauche de la page, dans la barre latérale du compte d’entreprise, cliquez sur Stratégies.
-
Sous « Stratégies », cliquez sur Actions.
-
Cliquez sur l’onglet Groupes d’exécuteurs.
-
Cliquez sur Nouveau groupe d’exécuteurs.
-
Sous « Nom du groupe », tapez un nom pour votre groupe d’exécuteurs.
-
Pour choisir une stratégie pour l’accès des organisations, sous « Accès des organisations », sélectionnez la liste déroulante Accès des organisations, puis cliquez sur Organisations sélectionnées.
-
À droite de la liste déroulante contenant la stratégie d’accès des organisations, cliquez sur .
-
Sélectionnez les organisations auxquelles vous voulez accorder l’accès au groupe d’exécuteurs.
-
Si vous souhaitez autoriser les dépôts publics des organisations sélectionnées à utiliser les exécuteurs du groupe, sélectionnez Autoriser les dépôts publics.
Avertissement :
Nous vous recommandons d’utiliser uniquement des exécuteurs auto-hébergés avec des dépôts privés. En effet, les duplications (forks) de votre dépôt public peuvent exécuter du code potentiellement dangereux sur la machine de votre exécuteur auto-hébergé en créant une demande de tirage qui exécute le code dans un workflow.
Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ».
-
Cliquez sur Créer un groupe pour créer le groupe et appliquer la stratégie.
-
Cliquez sur l’onglet « Exécuteurs ».
-
Dans la liste des exécuteurs, cliquez sur l’exécuteur que vous avez déployé dans la section précédente.
-
Cliquez sur Modifier.
-
Cliquez sur Groupes d’exécuteurs .
-
Dans la liste des groupes d’exécuteurs, cliquez sur le nom du groupe que vous avez créé précédemment.
-
Cliquez sur Enregistrer pour déplacer l’exécuteur vers le groupe.
Vous avez maintenant déployé un exécuteur auto-hébergé qui peut exécuter des travaux de GitHub Actions dans les organisations que vous avez spécifiées.
4. Restreindre davantage l’accès à l’exécuteur auto-hébergé
Si vous le souhaitez, les propriétaires d'organisation et les utilisateurs disposant de l’autorisation « Gérer les exécuteurs d’organisation et les groupes d’exécuteurs » peuvent restreindre davantage la stratégie d’accès du groupe d’exécuteurs que vous avez créé. Par exemple, un propriétaire d’organisation peut décider d’autoriser seulement certains dépôts de l’organisation à utiliser le groupe d’exécuteurs.
Pour plus d’informations, consultez « Gestion de l’accès aux exécuteurs auto-hébergés à l’aide de groupes ».
Pour plus d’informations sur les rôles d’organisation personnalisés, consultez « À propos des rôles d'organisation personnalisés ».
5. Mettre automatiquement à l’échelle vos exécuteurs auto-hébergés
En option, vous pouvez utiliser Actions Runner Controller (ARC) pour mettre automatiquement à l'échelle les exécuteurs auto-hébergés. Actions Runner Controller (ARC) est un opérateur Kubernetes qui orchestre et met à l’échelle des exécuteurs auto-hébergés pour GitHub Actions. Pour plus d'informations, consultez Modèle d’opérateur dans la documentation de Kubernetes.
Avec ARC, vous pouvez créer des groupes identiques d’exécuteurs qui sont automatiquement mis à l’échelle en fonction du nombre de flux de travail en cours d’exécution dans votre référentiel, organisation ou entreprise. Étant donné que les exécuteurs contrôlés peuvent être éphémères et basés sur des conteneurs, les nouvelles instances de l’exécuteur peuvent effectuer un scale-up ou un scale-down rapide et propre. Pour plus d’informations sur la mise à l’échelle automatique, consultez « Mise à l’échelle automatique avec des exécuteurs auto-hébergés ».
Étapes suivantes
-
Vous pouvez superviser les exécuteurs auto-hébergés et résoudre les problèmes courants. Pour plus d’informations, consultez « Surveillance des exécuteurs auto-hébergés et résolution des problèmes ».
-
GitHub vous recommande d’examiner les considérations de sécurité pour les ordinateurs exécuteurs auto-hébergés. Pour plus d’informations, consultez « Durcissement de la sécurité pour GitHub Actions ».
-
Vous pouvez synchroniser manuellement les référentiels sur GitHub.com contenant des actions avec votre entreprise sur GitHub Enterprise Server. Vous pouvez aussi autoriser les membres de votre entreprise à accéder automatiquement aux actions de GitHub.com à l’aide de GitHub Connect. Pour plus d'informations, consultez les documents suivants.
-
Vous pouvez personnaliser les logiciels disponibles sur vos ordinateurs exécuteurs auto-hébergés ou configurer vos exécuteurs pour qu’ils exécutent des logiciels similaires aux exécuteurs hébergés par GitHub accessibles aux clients utilisant GitHub.com. Les logiciels sur lesquels reposent les ordinateurs exécuteurs pour GitHub Actions sont open source. Pour plus d’informations, consultez les dépôts
actions/runner
etactions/runner-images
.