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.
Azure DevOps Services
Prise en main des modèles Azure Resource Manager (modèles ARM) en déployant une application web Linux avec MySQL. Les modèles ARM vous permettent d’enregistrer votre configuration dans le code. L’utilisation d’un modèle ARM est un exemple d’infrastructure en tant que code et une bonne pratique DevOps.
Un modèle ARM est un fichier JSON (JavaScript Object Notation) qui définit l’infrastructure et la configuration de votre projet. Le modèle utilise la syntaxe déclarative. Dans la syntaxe déclarative, vous décrivez le déploiement souhaité sans écrire la séquence de commandes de programmation pour créer le déploiement.
Vous pouvez utiliser la syntaxe JSON ou Bicep pour déployer des ressources Azure. En savoir plus sur la différence entre JSON et Bicep pour les modèles.
Prerequisites
Avant de commencer, vous avez besoin des éléments suivants :
- Un compte Azure avec un abonnement actif. Créez un compte gratuitement.
- Une organisation Azure DevOps active. Inscrivez-vous à Azure Pipelines.
- (Pour les déploiements Bicep) Un groupe de ressources existant. Créez un groupe de ressources avec le portail Azure, Azure CLI ou Azure PowerShell.
Obtenir le code
Forkez ce dépôt sur GitHub :
https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.web/webapp-linux-managed-mysql
Vérifier le modèle
Le modèle utilisé dans ce démarrage rapide est tiré des modèles de démarrage rapide Azure.
Le modèle définit plusieurs ressources :
Créer votre pipeline et déployer votre modèle
Connectez-vous à votre organisation Azure DevOps et accédez à votre projet. Créez un projet si vous n’en avez pas déjà un.
Accédez à Pipelines, puis sélectionnez Créer un pipeline.
Sélectionnez GitHub comme emplacement de votre code source.
Note
Vous pouvez être redirigé vers GitHub pour vous connecter. Si c’est le cas, entrez vos informations d’identification GitHub.
Lorsque la liste des référentiels s’affiche, sélectionnez
yourname/azure-quickstart-templates/.Note
Vous pouvez être redirigé vers GitHub pour installer l’application Azure Pipelines. Si c’est le cas, sélectionnez Approuver et installer.
Lorsque l’onglet Configurer s’affiche, sélectionnez
Starter pipeline.Remplacez le contenu de votre pipeline par ce code :
trigger: - none pool: vmImage: 'ubuntu-latest'Créer des variables de pipeline pour
siteName,administratorLoginetadministratorLoginPassword. La variable de mot de passe doit être marquée comme secret.- Sélectionnez Variables dans la page de pipeline.
- Utilisez le + bouton pour ajouter des variables.
- Pour
administratorLoginPassword, sélectionnez Conserver ce secret de valeur.
Ajoutez la tâche Copier des fichiers au fichier YAML :
trigger: - none pool: vmImage: 'ubuntu-latest' steps: - task: CopyFiles@2 inputs: SourceFolder: 'quickstarts/microsoft.web/webapp-linux-managed-mysql/' Contents: '**' TargetFolder: '$(Build.ArtifactStagingDirectory)'Ajoutez et configurez la tâche de déploiement de groupe de ressources Azure :
trigger: - none pool: vmImage: 'ubuntu-latest' steps: - task: CopyFiles@2 inputs: SourceFolder: 'quickstarts/microsoft.web/webapp-linux-managed-mysql/' Contents: '**' TargetFolder: '$(Build.ArtifactStagingDirectory)' - task: AzureResourceManagerTemplateDeployment@3 inputs: deploymentScope: 'Resource Group' azureResourceManagerConnection: '<your-resource-manager-connection>' subscriptionId: '<your-subscription-id>' action: 'Create Or Update Resource Group' resourceGroupName: 'ARMPipelinesLAMP-rg' location: '<your-closest-location>' templateLocation: 'Linked artifact' csmFile: '$(Build.ArtifactStagingDirectory)/azuredeploy.json' csmParametersFile: '$(Build.ArtifactStagingDirectory)/azuredeploy.parameters.json' overrideParameters: '-siteName $(siteName) -administratorLogin $(administratorLogin) -administratorLoginPassword $(administratorLoginPassword)' deploymentMode: 'Incremental'Cliquez sur Enregistrer et exécuter pour déployer votre modèle. La tâche de pipeline est lancée et après quelques minutes, selon votre agent, l’état du travail doit indiquer
Success.
Passer en revue les ressources déployées
Vérifiez que les ressources sont déployées. Accédez au groupe de ressources
ARMPipelinesLAMP-rgdans le portail Azure et vérifiez que vous voyez les ressources App Service, App Service Plan et Azure Database pour MySQL serveur.
Vous pouvez également vérifier les ressources à l’aide d’Azure CLI.
az resource list --resource-group ARMPipelinesLAMP-rg --output tableAccédez à votre nouveau site. Si vous définissez
siteNamesurarmpipelinetestsite, le site se trouve à l’emplacementhttps://armpipelinetestsite.azurewebsites.net/.
Nettoyer les ressources
Vous pouvez également utiliser un modèle ARM pour supprimer des ressources. Modifiez la action valeur de votre tâche de déploiement de groupe de ressources Azure sur DeleteRG. Vous pouvez également supprimer les entrées pour templateLocation, , csmFilecsmParametersFile, overrideParameterset deploymentMode.
trigger:
- none
pool:
vmImage: 'ubuntu-latest'
steps:
- task: CopyFiles@2
inputs:
SourceFolder: 'quickstarts/microsoft.web/webapp-linux-managed-mysql/'
Contents: '**'
TargetFolder: '$(Build.ArtifactStagingDirectory)'
- task: AzureResourceManagerTemplateDeployment@3
inputs:
deploymentScope: 'Resource Group'
azureResourceManagerConnection: '<your-resource-manager-connection>'
subscriptionId: '<your-subscription-id>'
action: 'DeleteRG'
resourceGroupName: 'ARMPipelinesLAMP-rg'
location: '<your-closest-location>'