GitHub Actions permet de créer des workflows simples mais puissants ainsi que d’automatiser la compilation et la livraison de logiciels intégrées avec GitHub. Ces actions, définies dans les fichiers YAML, vous permettent de déclencher un processus de workflow automatisé sur tout événement GitHub, tel qu’une validation de code, la création de demandes tirage ou de nouvelles mises en production GitHub, et bien plus.
Étant donné que GitHub a annoncé la disponibilité publique de ses fonctionnalités Actions aujourd’hui, nous annonçons que les GitHub Actions pour Azure sont désormais généralement disponibles.
Vous pouvez trouver toutes les GitHub Actions pour Azure et leurs dépôts répertoriés sur GitHub, ainsi qu’une documentation et des exemples de modèles pour vous aider à créer facilement des workflows afin de les générer, tester, empaqueter, mettre en production et déployer sur Azure à la suite d’une demande d’envoi ou de tirage.
Vous pouvez également utiliser des modèles de démarrage Azure pour créer facilement des workflows CI/CD GitHub ciblant Azure afin de déployer vos applications créées avec des langages et infrastructures populaires, dont .NET, Node.js, Java, PHP, Ruby ou Python, en conteneurs ou s’exécutant sur tout système d’exploitation.
Connectez-vous à Azure
Authentifiez votre abonnement Azure à l’aide de l’action Connexion Azure (azure/login)
et d’un principal de service. Vous pouvez ensuite exécuter des scripts Azure CLI pour créer et gérer toute ressource Azure à l’aide de l’action Azure CLI (azure/cli)
, qui configure l’environnement d’exécution d’action GitHub avec la dernière version (ou toute version spécifiée par l’utilisateur) d’Azure CLI.
Déployer une application web
Azure App Service est une plateforme gérée pour le déploiement et la mise à l’échelle d’applications web. Vous pouvez facilement déployer votre application web sur Azure App Service avec les actions Azure WebApp (azure/webapps-deploy)
et Azure Web App pour conteneurs (azure/webapps-container-deploy)
. Vous pouvez également configurer des paramètres d’application et des chaînes de connexion à l’aide de l’action Azure App Service Paramètres (azure/appservice-settings)
.
Apprenez-en davantage sur Azure App Service.
Déployer une application de fonction serverless
Simplifiez le déploiement de vos applications serverless sur Azure Functions, plateforme de calcul serverless basée sur les événements, en apportant votre code à l’aide de l’action Azure Functions (azure/functions-action)
ou votre image de conteneur personnalisée à l’aide de l’action Azure Functions pour conteneurs (azure/functions-container-action)
.
Apprenez-en davantage sur Azure Functions.
Générer et déployer des applications conteneurisées
Pour des applications conteneurisées (monoconteneurs ou multiconteneurs), utilisez l’action de connexion de Docker (azure/docker-login)
pour créer un workflow complet afin de générer des images de conteneur, envoyer un registre de conteneurs (Docker Hub ou Azure Container Registry), puis déployer les images vers une application web Azure, une fonction Azure pour conteneurs ou Kubernetes.
Déployer sur Kubernetes
Nous avons mis en production plusieurs actions pour vous aider à vous connecter à un cluster Kubernetes s’exécutant localement ou sur n’importe quel cloud (y compris Azure Kubernetes Service), à préparer et déployer des manifestes, à remplacer des artefacts, à vérifier l’état du déploiement et à traiter des secrets au sein du cluster.
- Programme d’installation de l’outil Kubectl
(azure/setup-kubectl)
: Installe une version spécifique de Kubectl sur l’exécuteur. - Contexte défini par Kubernetes
(azure/k8s-set-context)
: Utilisé pour définir le contexte du cluster Kubernetes cible qui sera utilisé par d’autres actions ou exécutera tout commande Kubectl. - Contexte défini par AKS
(azure/aks-set-context)
: Utilisé pour définir le contexte du cluster Azure Container Service cible. - Création de secret Kubernetes
(azure/k8s-create-secret)
: Créer un secret générique ou de registre Docker dans le cluster Kubernetes. - Déploiement de Kubernetes
(azure/k8s-deploy)
: Utiliser ceci pour déployer des manifestes sur des clusters Kubernetes. - Configurer Helm
(azure/setup-helm)
: Installez une version spécifique du fichier binaire Helm sur l’exécuteur. - Préparation de Kubernetes bake
(azure/k8s-bake)
: Utiliser cette action pour préparer un fichier manifeste à utiliser pour des déploiements à l’aide de Helm 2, kustomize ou Kompose.
Pour déployer vers un cluster sur Azure Kubernetes Service (AKS), vous pouvez utiliser azure/aks-set-context
pour communiquer avec le cluster AKS, puis azure/k8s-create-secret
pour créer un secret d’image de tirage, et enfin azure/k8s-deploy
pour déployer les fichiers manifeste.
Déployer sur Azure SQL ou Bases de données MySQL
Nous avons désormais une action pour les bases de données Azure SQL (azure/sql-action)
qui utilise une chaîne de connexion pour l’authentification et des scripts DACPAC/SQL pour déployer sur votre Azure SQL Database.
Si vous souhaitez opérer un déploiement sur une Base de données Azure Database pour MySQL à l’aide de scripts MySQL, utilisez plutôt l’action MySQL (azure/mysql-action)
.
Déclencher une exécution dans Azure Pipelines
Les GitHub Actions facilitent la génération, le test et le déploiement de votre code directement à partir de GitHub, mais vous pouvez également les utiliser pour déclencher des outils et services de CI/CD externes, dont Azure Pipelines. Si votre workflow nécessite une exécution d’Azure Pipelines pour le déploiement dans un environnement Azure Pipelines spécifique, par exemple, l’action Azure Pipelines (azure/pipelines)
vous permettra de déclencher cette exécution dans le cadre de votre workflow Actions.
Actions utilitaires
Enfin, nous avons également publié une action de substitution de variable Microsoft/variable-substitution
qui permet de paramétrer les valeurs dans des fichiers JSON, XML ou YAML (dont des fichiers de configuration, manifestes, et autres) au sein d’un workflow d’action GitHub.
Bientôt plus
Nous allons continuer d’améliorer notre ensemble de GitHub Actions disponible, et en publierons de nouvelles pour couvrir davantage de services Azure.
Nous vous invitons à essayer GitHub Actions pour Azure et à partager vos commentaires via Twitter sur @Azure. Si vous rencontrez un problème, veuillez ouvrir un problème sur le dépôt GitHub relatif à l’action spécifique.