Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
GitHub Actions est une fonctionnalité sur GitHub qui vous permet d’automatiser vos workflows de développement de logiciels. Si votre code source est stocké dans un référentiel GitHub, vous pouvez créer un workflow personnalisé dans GitHub Actions pour générer, tester, empaqueter, mettre en production ou déployer n’importe quel projet de code.
Dans cet article, vous allez apprendre à utiliser GitHub Actions pour créer un workflow CI/CD et déployer un travail Stream Analytics sur Azure. Ainsi, la prochaine fois que vous apporterez des modifications à votre référentiel GitHub, cela déclenchera automatiquement le workflow et déploiera votre projet Stream Analytics sur Azure.
Prérequis
Avant de commencer, vous devez disposer des prérequis suivants :
- Un compte Azure avec un abonnement actif.
- Un compte GitHub pour configurer des référentiels GitHub, créer des workflows et configurer des secrets GitHub.
- Exécutez la commande
azdans PowerShell. Suivez ce guide pour installer ou mettre à jour l’interface de ligne de commande (CLI) Azure sur votre ordinateur local.
Étape 1 : Envoyer (push) le projet Stream Analytics vers le référentiel GitHub
Nous utilisons l’extension Azure Stream Analytics pour Visual Studio Code (VS Code) pour gérer votre projet Stream Analytics. Suivez ce guide si vous ne l’avez pas installée.
Accédez à l’éditeur de requête dans le Portail Azure et sélectionnez Ouvrir dans VS Code.
Une fois l’opération terminée, vous devriez voir votre projet Stream Analytics dans l’espace de travail VS Code.
Appuyez sur Ctrl+J pour ouvrir le terminal dans VS Code. Entrez la commande git pour envoyer (push) le projet vers votre référentiel GitHub.
Étape 2 : Configurer des secrets dans GitHub
Vous devez créer au moins 3 secrets GitHub pour déployer un travail Stream Analytics. Un secret pour vos informations d’identification Azure et d’autres pour vos ressources Azure d’entrée/sortie.
Accédez à votre référentiel GitHub et sélectionnez l’onglet Paramètres. Sélectionnez Secrets et variables > Actions dans le menu de gauche, puis sélectionnez Nouveau secret de référentiel pour créer un secret.
Créez un secret pour les informations d’identification Azure. Ouvrez PowerShell et exécutez la commande suivante. Copiez ensuite le JSON de sortie dans la valeur de secret.
Remplacez {subscription-id} et {resource-group} par votre ressource Azure. Assurez-vous que vous disposez de la version la plus récente d’Azure CLI.
az login az ad sp create-for-rbac --name "myApp" --role contributor --scopes /subscriptions/{subscription-id}/resourceGroups/{resource-group} --json-authEntrez un nom de secret tel que
AZURE_CREDENTIALSet copiez le JSON de sortie vers la valeur de secret. Sélectionnez ensuite Ajouter un secret.Pour en savoir plus sur l’utilisation de l’action de connexion Azure avec un secret de principal de service, consultez ceci.
Créez des secrets pour les ressources d’entrée et de sortie. Pour plusieurs ressources d’entrée/sortie, vous devez créer des secrets pour chaque ressource Azure, respectivement.
Une fois que vous avez terminé, vous devriez avoir au moins trois secrets créés pour le référentiel GitHub.
Étape 3 : Créer un workflow à l’aide de GitHub Actions
Accédez à l’onglet Actions, puis sélectionnez Nouveau workflow>Configurer un workflow vous-même.
Copiez ce modèle dans le fichier YAML et modifiez les paramètres.
PROJECT_NAME : nom de votre travail Stream Analytics.
OUTPUT_PATH : laissez tel quel.
TARGET_RESOURCE_GROUP : votre groupe de ressources Azure.
EMPLACEMENT : région Azure pour le déploiement. Vous trouverez les régions disponibles ici.
OVERRIDE_PARAMETERS : informations d’identification pour la ressource Azure. Pour analyser correctement les informations d’identification, le paramètre doit être défini comme une paire clé-valeur au format suivant :
# Inputs_ehinput_DataSource_SharedAccessPolicyKey # \____/ \_____/ \________/ \__________________/ # | | | # input/output name credential namePar exemple, pour une entrée Event Hubs et une sortie de Stockage Blob, la clé doit être :
Inputs_ClickStream_DataSource_SharedAccessPolicyKey=${{ secrets.ASA_INPUT }} Outputs_BlobOutput_DataSource_AccountKey=${{ secrets.ASA_OUTPUT }}Voici un mappage du type de ressource Azure à son nom d’informations d’identification :
Types de ressource Credential name (Nom des informations d’identification) Azure Event Hubs, Azure IoT Hub, Azure Service Bus SharedAccessPolicyKey Stockage Blob Azure, Azure Cosmos DB, Stockage Table Azure AccountKey Fonction Azure ApiKey Azure SQL Database, Azure Synapse Analytics Mot de passe
Enregistrez et validez les changements dans la branche primaire. Accédez ensuite à Actions et sélectionnez Exécuter le workflow. Vous pouvez surveiller la progression du workflow.
Une fois l’opération terminée, vous pouvez remarquer que le travail Stream Analytics a commencé à s’exécuter dans le Portail Azure. Le workflow dans GitHub Actions se déclenche automatiquement la prochaine fois que vous pousserez les modifications vers la branche main.
Félicitations ! Vous avez correctement créé un workflow dans GitHub et déployé votre projet Stream Analytics sur Azure. Avec ce workflow, votre projet Stream Analytics peut générer, tester, publier et déployer automatiquement sur Azure chaque fois que des modifications sont envoyées à la branche main de votre référentiel GitHub.