Démarrage rapide : Créer des modèles ARM avec Visual Studio Code

Les outils Azure Resource Manager pour Visual Studio Code fournissent une prise en charge des langages, des extraits de code de ressources et l’autocomplétion des ressources. Ces outils permettent de créer et de valider les modèles Azure Resource Manager (modèles ARM). Il s’agit donc de la méthode recommandée pour la création et la configuration de modèles ARM. Dans ce guide de démarrage rapide, vous allez utiliser l’extension qui permet de créer un modèle ARM à partir de zéro. Ainsi, vous découvrirez les fonctionnalités de l’extension telles que les extraits de code des modèles ARM, la validation, l’autocomplétion et la prise en charge des fichiers de paramètres.

Ce démarrage rapide se concentre sur l’utilisation de l’extension Visual Studio Code pour générer le modèle ARM. Pour découvrir un tutoriel plus orienté sur la syntaxe, consultez Tutoriel : créer et déployer votre premier modèle ARM.

Pour suivre ce guide de démarrage rapide, vous avez besoin de Visual Studio Code, ainsi que de l’extension Outils Azure Resource Manager. Vous avez également besoin soit d’Azure CLI, soit du module Azure PowerShell, que vous devez authentifier après leur installation.

Si vous ne disposez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Conseil

Nous recommandons Bicep parce qu’il offre les mêmes fonctionnalités que les modèles ARM et que la syntaxe est plus facile d’utilisation. Pour en savoir plus, consultez Démarrage rapide : Créer des fichiers Bicep avec Visual Studio Code.

Remarque

La version actuelle de l’extension Azure Resource Manager Tools pour Visual Studio Code ne reconnaît pas les améliorations apportées à languageVersion 2.0.

Créer un modèle ARM

Dans Visual Studio Code, créez puis ouvrez avec un fichier nommé azuredeploy.json. Entrez arm dans l’éditeur de code pour initialiser les extraits de code Azure Resource Manager en vue de générer automatiquement des modèles à partir d’un modèle ARM.

Sélectionnez arm! pour créer un modèle limité à un déploiement de groupe de ressources Azure.

Screenshot showing Azure Resource Manager scaffolding snippets.

Cet extrait de code crée la base d’un modèle ARM.

Screenshot showing a fully scaffolded ARM template.

Notez que le mode de langage Visual Studio Code est passé de JSON à Modèle Azure Resource Manager. L’extension comprend un serveur de langage propre aux modèles ARM qui permet la validation et l’achèvement spécifiques aux modèles, ainsi que d’autres services de langage.

Screenshot showing Azure Resource Manager as the Visual Studio Code language mode.

Ajouter une ressource Azure

L’extension comprend des extraits de code pour de nombreuses ressources Azure. Ces extraits de code peuvent être utilisés pour ajouter facilement des ressources à votre déploiement de modèle.

Placez le curseur dans le bloc resources du modèle, tapez storage, puis sélectionnez l’extrait de code arm-storage.

Screenshot showing a resource being added to the ARM template.

Cette action ajoute une ressource de stockage au modèle.

Screenshot showing an Azure Storage resource in an ARM template.

Vous pouvez utiliser la touche de tabulation pour parcourir les propriétés configurables du compte de stockage.

Screenshot showing how the tab key can be used to navigate through resource configuration.

Autocomplétion et validation

L’une des fonctionnalités les plus puissantes de l’extension est son intégration aux schémas Azure. Les schémas Azure permettent à l’extension de bénéficier de fonctionnalités comme la validation et l’autocomplétion des ressources. Nous allons modifier le compte de stockage pour voir à quoi ressemble la validation et l’autocomplétion.

Tout d’abord, mettez à jour le type de compte de stockage avec une valeur non valide, par exemple megaStorage. Notez que cette action génère un avertissement indiquant que megaStorage n’est pas une valeur valide.

Screenshot showing an invalid storage configuration.

Pour utiliser les fonctionnalités d’autocomplétion, supprimez megaStorage, placez le curseur à l’intérieur des guillemets doubles, puis appuyez sur ctrl + space. Cette action présente une liste de complétion comprenant des valeurs valides.

Screenshot showing extension auto-completion.

Ajouter des paramètres de modèle

À présent, vous allez créer et utiliser un paramètre pour spécifier le nom du compte de stockage.

Placez votre curseur dans le bloc de paramètres, ajoutez un retour chariot, tapez ", puis sélectionnez l’extrait de code new-parameter. Cette action ajoute un paramètre générique au modèle.

Screenshot showing a parameter being added to the ARM template.

Remplacez le nom du paramètre par storageAccountName et sa description par Storage Account Name.

Screenshot showing the completed parameter in an ARM template.

Le nom d’un compte de stockage Azure doit être constitué de 3 à 24 caractères. Ajoutez minLength et maxLength au paramètre et fournissez les valeurs appropriées.

Screenshot showing minLength and maxLength being added to an ARM template parameter.

Maintenant, dans la ressource de stockage, mettez à jour la propriété Name pour utiliser le paramètre. Pour cela, supprimez le nom actuel. Entrez un guillemet double et un crochet ouvrant ([) pour afficher une liste de fonctions de modèle ARM. Sélectionnez parameters dans la liste.

Screenshot showing auto-completion when using parameters in ARM template resources.

Si vous entrez un guillemet simple (') entre deux parenthèses, vous obtenez la liste de tous les paramètres définis dans le modèle, en l’occurence storageAccountName. Sélectionnez le paramètre.

Screenshot showing completed parameter in an ARM template resource.

Créer un fichier de paramètres

Pour un modèle ARM, un fichier de paramètres vous permet de stocker des valeurs de paramètres propres à l’environnement et de passer ces valeurs en groupe au moment du déploiement. Par exemple, vous pouvez avoir un fichier de paramètres contenant des valeurs propres à un environnement de test et un autre fichier contenant des valeurs pour un environnement de production.

L’extension facilite la création d’un fichier de paramètres à partir de vos modèles existants. Pour ce faire, cliquez avec le bouton droit sur le modèle dans l’éditeur de code, puis sélectionnez Select/Create Parameter File.

Screenshot showing the right-click process for creating a parameter file from an ARM template.

Sélectionnez New>All Parameters> sélectionnez un nom et un emplacement pour le fichier de paramètres.

Cette action crée un fichier de paramètres et le mappe avec le modèle à partir duquel il a été créé. Vous pouvez voir et modifier le mappage actuel entre le modèle et le fichier de paramètres dans la barre d’état Visual Studio Code lorsque vous sélectionnez le modèle en question.

Screenshot showing the template/parameter file mapping in the Visual Studio Code status bar.

Maintenant que le fichier de paramètres est mappé au modèle, l’extension valide à la fois le modèle et le fichier de paramètres. Pour voir cette validation à l’œuvre, ajoutez une valeur à deux caractères au paramètre storageAccountName dans le fichier de paramètres, puis enregistrez le fichier.

Screenshot showing an invalidated template due to parameter file issue.

Revenez au modèle ARM et notez qu’une erreur s’affiche, indiquant que la valeur ne répond pas aux critères du paramètre.

Screenshot showing a valid ARM template.

Remplacez la valeur par une valeur valide, enregistrez le fichier, puis revenez au modèle. Notez que l’erreur concernant le paramètre est résolue.

Déployer le modèle

Ouvrez le terminal Visual Studio Code intégré à l’aide de la combinaison de touches ctrl + `, puis utilisez Azure CLI ou le module Azure PowerShell afin de déployer le modèle.

az group create --name arm-vscode --location eastus

az deployment group create --resource-group arm-vscode --template-file azuredeploy.json --parameters azuredeploy.parameters.json

Nettoyer les ressources

Lorsque les ressources Azure ne sont plus nécessaires, utilisez Azure CLI ou le module Azure PowerShell afin de supprimer le groupe de ressources qui a été utilisé pour ce guide de démarrage rapide.

az group delete --name arm-vscode

Étapes suivantes