À propos du réseau privé Azure pour les exécuteurs hébergés par GitHub
Pour utiliser des exécuteurs hébergés par GitHubavec un VNet Azure, commencez par configurer vos ressources Azure. Créez ensuite une configuration réseau privée dans GitHub.
Les procédures suivantes vous guideront tout au long des étapes.
Pour plus d’informations sur la résolution des problèmes courants liés à l’utilisation des exécuteurs hébergés par GitHub avec un VNET Azure, consultez »Dépannage des configurations réseau privé Azure pour les exécuteurs hébergés par GitHub dans votre organisation. ».
Configuration de vos ressources Azure
Vous allez utiliser un script pour automatiser la configuration de vos ressources Azure.
Prérequis
-
Utilisez un compte Azure avec le rôle Contributeur d’abonnement et le rôle Contributeur de réseau. Ces rôles vous permettent d’inscrire le fournisseur de ressources
GitHub.Network
et de déléguer le sous-réseau. Pour plus d’informations, consultez Rôles Azure intégrés sur Microsoft Learn. -
Pour associer correctement les sous-réseaux à l’utilisateur approprié, les ressources Azure
NetworkSettings
doivent être créées dans les mêmes abonnements où les réseaux virtuels sont créés. -
Pour garantir la disponibilité des ressources/résidence des données, les ressources doivent être créées dans la même région Azure.
-
Enregistrez le fichier suivant
.bicep
. Nommez le fichieractions-nsg-deployment.bicep
.Le fichier
.bicep
que nous fournissons contient l’ensemble minimal de règles pour utiliser les exécuteurs GitHub hébergés avec le VNet Azure. Vous devrez peut-être ajouter des règles pour votre cas d’usage spécifique.Si vous utilisez GitHub Enterprise Cloud avec résidence des données, dans la
AllowOutBoundGitHub
section, vous devez également inclure les plages IP de sortie pour GHE.com. Consultez « Détails du réseau pour GHE.com ».Remarque : Au lieu d'utiliser le fichier suivant pour permettre à GitHub Actions de communiquer avec les agents d'exécution, vous pouvez autoriser les mêmes domaines de pare-feu que ceux requis pour la communication entre les agents d'exécution auto-hébergés et GitHub. Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés ». Pour déterminer la plage d’adresses IP de sous-réseau appropriée, nous vous recommandons d’ajouter une mémoire tampon de 30 % à la concurrence maximale des tâches que vous prévoyez. Par exemple, si les exécuteurs de votre configuration réseau sont définis sur une concurrence maximale des tâches de 300, il est recommandé d’utiliser une plage d’adresses IP de sous-réseau qui peut prendre en charge au moins 390 exécuteurs. Cette mémoire tampon permet de s’assurer que votre réseau peut gérer des augmentations inattendues de la concurrence des machines virtuelles pour répondre à la concurrence des tâches sans manquer d’adresses IP.
Bicep @description('NSG for outbound rules') param location string param nsgName string = 'actions_NSG' resource actions_NSG 'Microsoft.Network/networkSecurityGroups@2017-06-01' = { name: nsgName location: location properties: { securityRules: [ { name: 'AllowVnetOutBoundOverwrite' properties: { protocol: 'TCP' sourcePortRange: '*' destinationPortRange: '443' sourceAddressPrefix: '*' destinationAddressPrefix: 'VirtualNetwork' access: 'Allow' priority: 200 direction: 'Outbound' destinationAddressPrefixes: [] } } { name: 'AllowOutBoundActions' properties: { protocol: '*' sourcePortRange: '*' destinationPortRange: '*' sourceAddressPrefix: '*' access: 'Allow' priority: 210 direction: 'Outbound' destinationAddressPrefixes: [ '4.175.114.51/32' '20.102.35.120/32' '4.175.114.43/32' '20.72.125.48/32' '20.19.5.100/32' '20.7.92.46/32' '20.232.252.48/32' '52.186.44.51/32' '20.22.98.201/32' '20.246.184.240/32' '20.96.133.71/32' '20.253.2.203/32' '20.102.39.220/32' '20.81.127.181/32' '52.148.30.208/32' '20.14.42.190/32' '20.85.159.192/32' '52.224.205.173/32' '20.118.176.156/32' '20.236.207.188/32' '20.242.161.191/32' '20.166.216.139/32' '20.253.126.26/32' '52.152.245.137/32' '40.118.236.116/32' '20.185.75.138/32' '20.96.226.211/32' '52.167.78.33/32' '20.105.13.142/32' '20.253.95.3/32' '20.221.96.90/32' '51.138.235.85/32' '52.186.47.208/32' '20.7.220.66/32' '20.75.4.210/32' '20.120.75.171/32' '20.98.183.48/32' '20.84.200.15/32' '20.14.235.135/32' '20.10.226.54/32' '20.22.166.15/32' '20.65.21.88/32' '20.102.36.236/32' '20.124.56.57/32' '20.94.100.174/32' '20.102.166.33/32' '20.31.193.160/32' '20.232.77.7/32' '20.102.38.122/32' '20.102.39.57/32' '20.85.108.33/32' '40.88.240.168/32' '20.69.187.19/32' '20.246.192.124/32' '20.4.161.108/32' '20.22.22.84/32' '20.1.250.47/32' '20.237.33.78/32' '20.242.179.206/32' '40.88.239.133/32' '20.121.247.125/32' '20.106.107.180/32' '20.22.118.40/32' '20.15.240.48/32' '20.84.218.150/32' ] } } { name: 'AllowOutBoundGitHub' properties: { protocol: '*' sourcePortRange: '*' destinationPortRange: '*' sourceAddressPrefix: '*' access: 'Allow' priority: 220 direction: 'Outbound' destinationAddressPrefixes: [ '140.82.112.0/20' '143.55.64.0/20' '185.199.108.0/22' '192.30.252.0/22' '20.175.192.146/32' '20.175.192.147/32' '20.175.192.149/32' '20.175.192.150/32' '20.199.39.227/32' '20.199.39.228/32' '20.199.39.231/32' '20.199.39.232/32' '20.200.245.241/32' '20.200.245.245/32' '20.200.245.246/32' '20.200.245.247/32' '20.200.245.248/32' '20.201.28.144/32' '20.201.28.148/32' '20.201.28.149/32' '20.201.28.151/32' '20.201.28.152/32' '20.205.243.160/32' '20.205.243.164/32' '20.205.243.165/32' '20.205.243.166/32' '20.205.243.168/32' '20.207.73.82/32' '20.207.73.83/32' '20.207.73.85/32' '20.207.73.86/32' '20.207.73.88/32' '20.233.83.145/32' '20.233.83.146/32' '20.233.83.147/32' '20.233.83.149/32' '20.233.83.150/32' '20.248.137.48/32' '20.248.137.49/32' '20.248.137.50/32' '20.248.137.52/32' '20.248.137.55/32' '20.26.156.215/32' '20.26.156.216/32' '20.27.177.113/32' '20.27.177.114/32' '20.27.177.116/32' '20.27.177.117/32' '20.27.177.118/32' '20.29.134.17/32' '20.29.134.18/32' '20.29.134.19/32' '20.29.134.23/32' '20.29.134.24/32' '20.87.245.0/32' '20.87.245.1/32' '20.87.245.4/32' '20.87.245.6/32' '20.87.245.7/32' '4.208.26.196/32' '4.208.26.197/32' '4.208.26.198/32' '4.208.26.199/32' '4.208.26.200/32' ] } } { name: 'AllowStorageOutbound' properties: { protocol: '*' sourcePortRange: '*' destinationPortRange: '*' sourceAddressPrefix: '*' destinationAddressPrefix: 'Storage' access: 'Allow' priority: 230 direction: 'Outbound' destinationAddressPrefixes: [] } } ] } }
@description('NSG for outbound rules') param location string param nsgName string = 'actions_NSG' resource actions_NSG 'Microsoft.Network/networkSecurityGroups@2017-06-01' = { name: nsgName location: location properties: { securityRules: [ { name: 'AllowVnetOutBoundOverwrite' properties: { protocol: 'TCP' sourcePortRange: '*' destinationPortRange: '443' sourceAddressPrefix: '*' destinationAddressPrefix: 'VirtualNetwork' access: 'Allow' priority: 200 direction: 'Outbound' destinationAddressPrefixes: [] } } { name: 'AllowOutBoundActions' properties: { protocol: '*' sourcePortRange: '*' destinationPortRange: '*' sourceAddressPrefix: '*' access: 'Allow' priority: 210 direction: 'Outbound' destinationAddressPrefixes: [ '4.175.114.51/32' '20.102.35.120/32' '4.175.114.43/32' '20.72.125.48/32' '20.19.5.100/32' '20.7.92.46/32' '20.232.252.48/32' '52.186.44.51/32' '20.22.98.201/32' '20.246.184.240/32' '20.96.133.71/32' '20.253.2.203/32' '20.102.39.220/32' '20.81.127.181/32' '52.148.30.208/32' '20.14.42.190/32' '20.85.159.192/32' '52.224.205.173/32' '20.118.176.156/32' '20.236.207.188/32' '20.242.161.191/32' '20.166.216.139/32' '20.253.126.26/32' '52.152.245.137/32' '40.118.236.116/32' '20.185.75.138/32' '20.96.226.211/32' '52.167.78.33/32' '20.105.13.142/32' '20.253.95.3/32' '20.221.96.90/32' '51.138.235.85/32' '52.186.47.208/32' '20.7.220.66/32' '20.75.4.210/32' '20.120.75.171/32' '20.98.183.48/32' '20.84.200.15/32' '20.14.235.135/32' '20.10.226.54/32' '20.22.166.15/32' '20.65.21.88/32' '20.102.36.236/32' '20.124.56.57/32' '20.94.100.174/32' '20.102.166.33/32' '20.31.193.160/32' '20.232.77.7/32' '20.102.38.122/32' '20.102.39.57/32' '20.85.108.33/32' '40.88.240.168/32' '20.69.187.19/32' '20.246.192.124/32' '20.4.161.108/32' '20.22.22.84/32' '20.1.250.47/32' '20.237.33.78/32' '20.242.179.206/32' '40.88.239.133/32' '20.121.247.125/32' '20.106.107.180/32' '20.22.118.40/32' '20.15.240.48/32' '20.84.218.150/32' ] } } { name: 'AllowOutBoundGitHub' properties: { protocol: '*' sourcePortRange: '*' destinationPortRange: '*' sourceAddressPrefix: '*' access: 'Allow' priority: 220 direction: 'Outbound' destinationAddressPrefixes: [ '140.82.112.0/20' '143.55.64.0/20' '185.199.108.0/22' '192.30.252.0/22' '20.175.192.146/32' '20.175.192.147/32' '20.175.192.149/32' '20.175.192.150/32' '20.199.39.227/32' '20.199.39.228/32' '20.199.39.231/32' '20.199.39.232/32' '20.200.245.241/32' '20.200.245.245/32' '20.200.245.246/32' '20.200.245.247/32' '20.200.245.248/32' '20.201.28.144/32' '20.201.28.148/32' '20.201.28.149/32' '20.201.28.151/32' '20.201.28.152/32' '20.205.243.160/32' '20.205.243.164/32' '20.205.243.165/32' '20.205.243.166/32' '20.205.243.168/32' '20.207.73.82/32' '20.207.73.83/32' '20.207.73.85/32' '20.207.73.86/32' '20.207.73.88/32' '20.233.83.145/32' '20.233.83.146/32' '20.233.83.147/32' '20.233.83.149/32' '20.233.83.150/32' '20.248.137.48/32' '20.248.137.49/32' '20.248.137.50/32' '20.248.137.52/32' '20.248.137.55/32' '20.26.156.215/32' '20.26.156.216/32' '20.27.177.113/32' '20.27.177.114/32' '20.27.177.116/32' '20.27.177.117/32' '20.27.177.118/32' '20.29.134.17/32' '20.29.134.18/32' '20.29.134.19/32' '20.29.134.23/32' '20.29.134.24/32' '20.87.245.0/32' '20.87.245.1/32' '20.87.245.4/32' '20.87.245.6/32' '20.87.245.7/32' '4.208.26.196/32' '4.208.26.197/32' '4.208.26.198/32' '4.208.26.199/32' '4.208.26.200/32' ] } } { name: 'AllowStorageOutbound' properties: { protocol: '*' sourcePortRange: '*' destinationPortRange: '*' sourceAddressPrefix: '*' destinationAddressPrefix: 'Storage' access: 'Allow' priority: 230 direction: 'Outbound' destinationAddressPrefixes: [] } } ] } }
1. Obtenir la valeur databaseId
de votre organisation
Vous pouvez utiliser la requête GraphQL suivante pour récupérer la valeur databaseId
de votre organisation. Vous allez utiliser l’organisation databaseId
pour la valeur de la variable d’environnement DATABASE_ID
à l’étape suivante. Pour plus d’informations sur l’utilisation de GraphQL, consultez « Formation d’appels avec GraphQL ».
Variable de requête | Description |
---|---|
login | Connexion pour votre compte d’organisation, que vous pouvez identifier en examinant l’URL de votre organisation. https://github.com/organizations/ORGANIZATION_LOGIN |
query(
$login: String!
){
organization (login: $login)
{
login
databaseId
}
}
'
Variables
{
"login": "ORGANIZATION_LOGIN"
}
Vous pouvez également utiliser la commande curl suivante pour trouver votre databaseId
.
curl -H "Authorization: Bearer BEARER_TOKEN" -X POST \ -d '{ "query": "query($login: String!) { organization (login: $login) { login databaseId } }" , "variables": { "login": "ORGANIZATION_LOGIN" } }' \ https://api.github.com/graphql
curl -H "Authorization: Bearer BEARER_TOKEN" -X POST \
-d '{ "query": "query($login: String!) { organization (login: $login) { login databaseId } }" ,
"variables": {
"login": "ORGANIZATION_LOGIN"
}
}' \
https://api.github.com/graphql
2. Utiliser un script pour configurer vos ressources Azure
Utilisez le script suivant pour configurer un sous-réseau pour le réseau privé Azure. Le script crée toutes les ressources dans le même groupe de ressources.
Pour utiliser le script, remplissez les valeurs de variable d’environnement d’espace réservé avec les valeurs réelles et exécutez le script à partir d’un interpréteur de commandes bash ou d’un Sous-système Windows pour Linux.
Note
- Exécutez le script suivant dans le même référentiel où vous avez enregistré le fichier
actions-nsg-deployment.bicep
. - Lorsque vous définissez la variable d’environnement
YOUR_AZURE_LOCATION
, utilisez le nom de votre région. Cette valeur est différente du nom complet de votre région. Pour afficher la liste des noms et des noms complets, utilisezaz account list-locations -o table
. - Lorsque vous créez la ressource de paramètres réseau, un lien d’association de service est appliqué au sous-réseau que vous fournissez. Ce lien empêche toute suppression accidentelle du sous-réseau lors de son utilisation par le service GitHub Actions.
- Si vous personnalisez ce script pour utiliser des ressources réseau dans des sous-réseaux existants, vous devez vous assurer que toutes les interfaces réseau (NIC) existantes connectées au sous-réseau sont supprimées avant que le sous-réseau soit délégué au service GitHub Actions. Dans le cas contraire, le service ne parviendra pas à appliquer le lien d’association de service au sous-réseau.
#!/bin/bash # This script creates the following resources in the specified subscription: # - Resource group # - Network Security Group rules # - Virtual network (vnet) and subnet # - Network Settings with specified subnet and GitHub Organization database ID # # It also registers the `GitHub.Network` resource provider with the subscription, # delegates the created subnet to the Actions service via the `GitHub.Network/NetworkSettings` # resource type, and applies the NSG rules to the created subnet. # stop on failure set -e #set environment export AZURE_LOCATION=YOUR_AZURE_LOCATION export SUBSCRIPTION_ID=YOUR_SUBSCRIPTION_ID export RESOURCE_GROUP_NAME=YOUR_RESOURCE_GROUP_NAME export VNET_NAME=YOUR_VNET_NAME export SUBNET_NAME=YOUR_SUBNET_NAME export NSG_NAME=YOUR_NSG_NAME export NETWORK_SETTINGS_RESOURCE_NAME=YOUR_NETWORK_SETTINGS_RESOURCE_NAME export DATABASE_ID=YOUR_DATABASE_ID # These are the default values. You can adjust your address and subnet prefixes. export ADDRESS_PREFIX=10.0.0.0/16 export SUBNET_PREFIX=10.0.0.0/24 echo echo login to Azure . az login --output none echo echo set account context $SUBSCRIPTION_ID . az account set --subscription $SUBSCRIPTION_ID echo echo Register resource provider GitHub.Network . az provider register --namespace GitHub.Network echo echo Create resource group $RESOURCE_GROUP_NAME at $AZURE_LOCATION . az group create --name $RESOURCE_GROUP_NAME --location $AZURE_LOCATION echo echo Create NSG rules deployed with 'actions-nsg-deployment.bicep' file . az deployment group create --resource-group $RESOURCE_GROUP_NAME --template-file ./actions-nsg-deployment.bicep --parameters location=$AZURE_LOCATION nsgName=$NSG_NAME echo echo Create vnet $VNET_NAME and subnet $SUBNET_NAME . az network vnet create --resource-group $RESOURCE_GROUP_NAME --name $VNET_NAME --address-prefix $ADDRESS_PREFIX --subnet-name $SUBNET_NAME --subnet-prefixes $SUBNET_PREFIX echo echo Delegate subnet to GitHub.Network/networkSettings and apply NSG rules . az network vnet subnet update --resource-group $RESOURCE_GROUP_NAME --name $SUBNET_NAME --vnet-name $VNET_NAME --delegations GitHub.Network/networkSettings --network-security-group $NSG_NAME echo echo Create network settings resource $NETWORK_SETTINGS_RESOURCE_NAME . az resource create --resource-group $RESOURCE_GROUP_NAME --name $NETWORK_SETTINGS_RESOURCE_NAME --resource-type GitHub.Network/networkSettings --properties "{ \"location\": \"$AZURE_LOCATION\", \"properties\" : { \"subnetId\": \"/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Network/virtualNetworks/$VNET_NAME/subnets/$SUBNET_NAME\", \"businessId\": \"$DATABASE_ID\" }}" --is-full-object --output table --query "{GitHubId:tags.GitHubId, name:name}" --api-version 2024-04-02 echo echo To clean up and delete resources run the following command: echo az group delete --resource-group $RESOURCE_GROUP_NAME
#!/bin/bash
# This script creates the following resources in the specified subscription:
# - Resource group
# - Network Security Group rules
# - Virtual network (vnet) and subnet
# - Network Settings with specified subnet and GitHub Organization database ID
#
# It also registers the `GitHub.Network` resource provider with the subscription,
# delegates the created subnet to the Actions service via the `GitHub.Network/NetworkSettings`
# resource type, and applies the NSG rules to the created subnet.
# stop on failure
set -e
#set environment
export AZURE_LOCATION=YOUR_AZURE_LOCATION
export SUBSCRIPTION_ID=YOUR_SUBSCRIPTION_ID
export RESOURCE_GROUP_NAME=YOUR_RESOURCE_GROUP_NAME
export VNET_NAME=YOUR_VNET_NAME
export SUBNET_NAME=YOUR_SUBNET_NAME
export NSG_NAME=YOUR_NSG_NAME
export NETWORK_SETTINGS_RESOURCE_NAME=YOUR_NETWORK_SETTINGS_RESOURCE_NAME
export DATABASE_ID=YOUR_DATABASE_ID
# These are the default values. You can adjust your address and subnet prefixes.
export ADDRESS_PREFIX=10.0.0.0/16
export SUBNET_PREFIX=10.0.0.0/24
echo
echo login to Azure
. az login --output none
echo
echo set account context $SUBSCRIPTION_ID
. az account set --subscription $SUBSCRIPTION_ID
echo
echo Register resource provider GitHub.Network
. az provider register --namespace GitHub.Network
echo
echo Create resource group $RESOURCE_GROUP_NAME at $AZURE_LOCATION
. az group create --name $RESOURCE_GROUP_NAME --location $AZURE_LOCATION
echo
echo Create NSG rules deployed with 'actions-nsg-deployment.bicep' file
. az deployment group create --resource-group $RESOURCE_GROUP_NAME --template-file ./actions-nsg-deployment.bicep --parameters location=$AZURE_LOCATION nsgName=$NSG_NAME
echo
echo Create vnet $VNET_NAME and subnet $SUBNET_NAME
. az network vnet create --resource-group $RESOURCE_GROUP_NAME --name $VNET_NAME --address-prefix $ADDRESS_PREFIX --subnet-name $SUBNET_NAME --subnet-prefixes $SUBNET_PREFIX
echo
echo Delegate subnet to GitHub.Network/networkSettings and apply NSG rules
. az network vnet subnet update --resource-group $RESOURCE_GROUP_NAME --name $SUBNET_NAME --vnet-name $VNET_NAME --delegations GitHub.Network/networkSettings --network-security-group $NSG_NAME
echo
echo Create network settings resource $NETWORK_SETTINGS_RESOURCE_NAME
. az resource create --resource-group $RESOURCE_GROUP_NAME --name $NETWORK_SETTINGS_RESOURCE_NAME --resource-type GitHub.Network/networkSettings --properties "{ \"location\": \"$AZURE_LOCATION\", \"properties\" : { \"subnetId\": \"/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Network/virtualNetworks/$VNET_NAME/subnets/$SUBNET_NAME\", \"businessId\": \"$DATABASE_ID\" }}" --is-full-object --output table --query "{GitHubId:tags.GitHubId, name:name}" --api-version 2024-04-02
echo
echo To clean up and delete resources run the following command:
echo az group delete --resource-group $RESOURCE_GROUP_NAME
Le script retournera la charge utile complète de la ressource créée. La valeur de hachage GitHubId
renvoyée dans la charge utile de la ressource créée est l’ID de la ressource des paramètres du réseau que vous utiliserez dans les étapes suivantes lors de la configuration réseau dans GitHub.
Création d’une configuration réseau pour votre organization dans GitHub
Après avoir configuré vos ressources Azure, vous pouvez utiliser un réseau virtuel Azure (VNET) pour un réseau privé en créant une configuration réseau au niveau de l'organisation. Ensuite, vous pouvez associer cette configuration réseau aux groupes d’exécuteurs. Pour plus d’informations sur les groupes d’exécuteurs, consultez « Contrôle de l’accès aux exécuteurs plus grands ».
Une fois la configuration réseau associée à un groupe d’exécuteurs, tous les exécuteurs de ce groupe auront accès au réseau virtuel Azure connecté à la configuration sous-jacente.
Prérequis
Vérifiez que vos ressources Azure ont été configurées avant d’ajouter une configuration réseau dans GitHub. Pour plus d’informations, consultez Pour plus d’informations, consultez « Configuration d'un réseau privé pour les exécuteurs hébergés sur GitHub dans votre organisation ».
1. Ajouter une nouvelle configuration réseau pour votre organisation
- Dans le coin supérieur droit de GitHub, sélectionnez votre photo de profil, puis cliquez sur Vos organisations.
- En regard de l’organisation, cliquez sur Paramètres.
- Dans la barre latérale gauche, cliquez sur Réseau informatique hébergé.
- Cliquez sur la liste déroulante Nouvelle configuration réseau. Cliquez ensuite sur Réseau privé Azure.
- Donnez un nom à votre configuration réseau.
- Cliquez sur Ajouter le réseau virtuel Azure.
- Dans la fenêtre contextuelle, entrez l’ID de ressource des paramètres réseau que vous avez récupérés lorsque vous avez configuré vos ressources Azure pour la mise en réseau privée.
- Cliquez sur Ajouter le réseau virtuel Azure.
2. Créer un groupe d’exécuteurs pour votre organisation
Remarque : pour que les dépôts au sein des organisations puissent accéder au groupe d’exécuteurs, ces dépôts doivent avoir accès à ce groupe d’exécuteurs au niveau de l’organisation. Pour plus d’informations, consultez « Contrôle de l’accès aux exécuteurs plus grands ».
- Créez un nouveau groupe d’exécuteurs pour votre organisation. Pour plus d'informations sur la création d'un groupe d’exécuteurs, consultez « Contrôle de l’accès aux exécuteurs plus grands ».
- Pour choisir une stratégie pour l’accès des référentiels, sélectionnez le menu déroulant Accès des référentiels et cliquez sur une stratégie. Vous pouvez configurer un groupe d’exécuteurs pour qu’il soit accessible à une liste spécifique de référentiels ou l’ensemble des référentiels de l’organisation.
- Lors de la configuration de votre groupe d’exécuteurs, sous « Configurations réseau », utilisez le menu déroulant pour sélectionner la configuration réseau que vous avez créée pour le réseau virtuel Azure.
- Cliquez sur Créer un groupe pour créer le groupe et appliquer la stratégie.
3. Ajouter l’exécuteur hébergé par GitHub
au groupe d’exécuteurs de l’organisation
Remarque : lors de l’ajout de l’exécuteur hébergé par GitHub à un groupe d’exécuteurs, sélectionnez le groupe d’exécuteurs que vous avez créé dans les procédures précédentes.
- Ajoutez l’exécuteur hébergé par GitHub au groupe d’exécuteurs. Pour plus d’informations, consultez « Gestion des exécuteurs de plus grande taille ».
4. Optionnellement, gérer les configurations du réseau
- Dans le coin supérieur droit de GitHub, sélectionnez votre photo de profil, puis cliquez sur Vos organisations.
- En regard de l’organisation, cliquez sur Paramètres.
- Dans la barre latérale gauche, cliquez sur Réseau informatique hébergé.
- Pour modifier une configuration réseau, à droite de la configuration réseau, cliquez sur . Cliquez sur Modifier la configuration.
- Pour désactiver une configuration réseau, à droite de la configuration réseau, cliquez sur . Cliquez ensuite sur Désactiver.
- Pour supprimer une configuration réseau, à droite de la configuration réseau, cliquez sur . Cliquez ensuite sur Supprimer.
Suppression d’un sous-réseau
Lorsque vous créez la ressource de paramètres réseau, un lien d’association de service est appliqué au sous-réseau que vous fournissez. Ce lien empêche toute suppression accidentelle du sous-réseau lors de son utilisation par le service GitHub Actions.
Pour supprimer le sous-réseau, le lien d'association de service doit d'abord être supprimé. Le lien d'association de service est supprimé en toute sécurité dès lors que la ressource de paramètres réseau est supprimée.
Pour supprimer la ressource des paramètres réseau, la configuration réseau qui l’utilise doit d’abord être supprimée.
-
Dans le coin supérieur droit de GitHub, sélectionnez votre photo de profil, puis cliquez sur Vos organisations.
-
En regard de l’organisation, cliquez sur Paramètres.
-
Dans la barre latérale gauche, cliquez sur Réseau informatique hébergé.
-
Ouvrez la configuration réseau qui utilise le sous-réseau que vous souhaitez supprimer.
-
Passez en revue la liste des groupes d'exécuteurs à l'aide de la configuration réseau.
-
Dans l'angle supérieur droit, cliquez sur le bouton « ». Cliquez ensuite sur Supprimer la configuration.
-
Pour supprimer la ressource des paramètres réseau et supprimer le lien d'association de service, utilisez vos propres entrées avec les commandes suivantes d'Azure CLI. Pour plus d'informations, consultez la Documentation sur l'interface de ligne de commande Azure (CLI)
Bash az account set --subscription $SUBSCRIPTION_ID az resource delete -g $RESOURCE_GROUP_NAME --name $NETWORK_SETTINGS_RESOURCE_NAME --resource-type 'GitHub.Network/networkSettings' --api-version '2023-11-01-preview'
az account set --subscription $SUBSCRIPTION_ID az resource delete -g $RESOURCE_GROUP_NAME --name $NETWORK_SETTINGS_RESOURCE_NAME --resource-type 'GitHub.Network/networkSettings' --api-version '2023-11-01-preview'
-
Supprimez le sous-réseau dans Azure. Pour plus d’informations, consultez Supprimer un sous-réseau sur Microsoft Learn.