Vue d'ensemble
Vous pouvez authentifier Actions Runner Controller (ARC) auprès de l’API GitHub à l’aide d’une GitHub App ou d’un personal access token (classic).
Remarque : Vous ne pouvez pas vous authentifier avec une GitHub App pour les exécuteurs au niveau de l’entreprise. Pour plus d’informations, consultez « Gestion de l’accès aux exécuteurs auto-hébergés à l’aide de groupes ».
Authentification d’ARC avec une GitHub App
-
Créez une GitHub App appartenant à une organisation. Pour plus d’informations, consultez « Inscription d’une application GitHub ». Configurez l’GitHub App comme suit.
-
Pour « URL de la page d’accueil », entrez
https://github.com/actions/actions-runner-controller
. -
Sous « Autorisations », cliquez sur Autorisations du dépôt. Utilisez ensuite les menus déroulants pour sélectionner les autorisations d’accès suivantes.
-
Administration : Lecture et écriture
Remarque :
Administration: Read and write
n’est nécessaire que lors de la configuration de Actions Runner Controller pour s’inscrire dans l’étendue du référentiel. Il n’est pas nécessaire de s’inscrire dans l’étendue de l’organisation. -
Métadonnées : Lecture seule
-
-
Sous « Autorisations », cliquez sur Autorisations de l’organisation. Utilisez ensuite les menus déroulants pour sélectionner les autorisations d’accès suivantes.
- Exécuteurs auto-hébergés : Lecture et écriture
-
-
Après avoir créé GitHub App, dans la page de GitHub App, notez la valeur « ID d’application ». Vous utiliserez cette valeur plus tard.
-
Sous « Clés privées », cliquez sur Générer une clé privée et enregistrez le fichier
.pem
. Vous utiliserez cette clé plus tard. -
Dans le menu en haut à gauche de la page, cliquez sur Installer l’application, puis à côté de votre organisation, cliquez sur Installer pour installer l’application dans votre organisation.
-
Après avoir confirmé les autorisations d’installation sur votre organisation, notez l’ID d’installation de l’application. Vous le réutiliserez ultérieurement. Vous trouverez l’ID d’installation de l’application dans la page d’installation de l’application, qui a le format d’URL suivant :
https://HOSTNAME/organizations/ORGANIZATION/settings/installations/INSTALLATION_ID
-
Enregistrez l’ID de l’application, l’ID d’installation et le fichier de clé privée
.pem
téléchargé via les étapes précédentes dans Kubernetes en tant que secret.Pour créer un secret Kubernetes avec les valeurs de vos GitHub App, exécutez la commande suivante.
Remarque : créez le secret dans le même espace de noms que celui où le graphique
gha-runner-scale-set
est installé. Dans cet exemple, l’espace de noms estarc-runners
, de sorte correspondre à la documentation de démarrage rapide. Pour plus d’informations, consultez « Démarrage rapide avec Actions Runner Controller ».Bash kubectl create secret generic pre-defined-secret \ --namespace=arc-runners \ --from-literal=github_app_id=123456 \ --from-literal=github_app_installation_id=654321 \ --from-literal=github_app_private_key='-----BEGIN RSA PRIVATE KEY-----********'
kubectl create secret generic pre-defined-secret \ --namespace=arc-runners \ --from-literal=github_app_id=123456 \ --from-literal=github_app_installation_id=654321 \ --from-literal=github_app_private_key='-----BEGIN RSA PRIVATE KEY-----********'
Ensuite, à l’aide de la propriété
githubConfigSecret
dans votre copie du fichiervalues.yaml
, transmettez le nom du secret en tant que référence.githubConfigSecret: pre-defined-secret
Pour obtenir d’autres options de configuration de Helm, consultez values.yaml
dans le référentiel ARC.
Authentification d’ARC avec un personal access token (classic)
ARC peut utiliser des personal access tokens (classic) pour inscrire des exécuteurs auto-hébergés.
Remarque : l’authentification ARC avec un personal access token (classic) est la seule méthode d’authentification prise en charge pour enregistrer les exécuteurs au niveau de l’entreprise.
-
Créez un personal access token (classic) avec les étendues requises. Les étendues requises varient selon que vous inscrivez des exécuteurs au niveau du dépôt, de l’organisation ou de l’entreprise. Pour plus d’informations sur la création d’un personal access token (classic), consultez « Gestion de vos jetons d'accès personnels ».
Voici la liste des étendues de personal access token requises pour les exécuteurs ARC.
- Exécuteurs de dépôt :
repo
- Exécuteurs d’organisation :
admin:org
- Exécuteurs d’entreprise :
manage_runners:enterprise
- Exécuteurs de dépôt :
-
Pour créer un secret Kubernetes avec les valeurs de votre personal access token (classic), utilisez la commande suivante.
Remarque : créez le secret dans le même espace de noms que celui où le graphique
gha-runner-scale-set
est installé. Dans cet exemple, l’espace de noms estarc-runners
, de sorte correspondre à la documentation de démarrage rapide. Pour plus d’informations, consultez « Démarrage rapide avec Actions Runner Controller ».Bash kubectl create secret generic pre-defined-secret \ --namespace=arc-runners \ --from-literal=github_token='YOUR-PAT'
kubectl create secret generic pre-defined-secret \ --namespace=arc-runners \ --from-literal=github_token='YOUR-PAT'
-
Dans votre copie du fichier
values.yaml
, passez le nom du secret en tant que référence.githubConfigSecret: pre-defined-secret
Pour obtenir d’autres options de configuration de Helm, consultez
values.yaml
dans le référentiel ARC.
Mentions légales
Certaines parties ont été adaptées à partir de https://github.com/actions/actions-runner-controller/ sous la licence Apache-2.0 :
Copyright 2019 Moto Ishizawa
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.