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.
Cet article décrit les commandes que vous pouvez utiliser dans l'interface CLI Bicep. Vous pouvez exécuter ces commandes à l’aide d’Azure CLI ou en appelant directement des commandes Bicep CLI. Chaque méthode nécessite un processus d’installation distinct. Pour plus d’informations sur les installations, consultez Azure CLI et Azure PowerShell.
Ce guide montre comment exécuter les commandes dans Azure CLI. Lors de l’exécution de commandes dans Azure CLI, démarrez-les avec az. Si vous n’utilisez pas Azure CLI, exécutez les commandes sans az démarrer chacune d’elles. Par exemple, az bicep build devient bicep build et az bicep version devient bicep --version.
build
La build commande convertit un fichier Bicep en modèle AZURE Resource Manager JSON (modèle ARM). En général, vous n'avez pas besoin d'exécuter cette commande car elle s'exécute automatiquement lorsque vous déployez un fichier Bicep. Exécutez-le manuellement lorsque vous souhaitez voir le modèle ARM JSON créé à partir de votre fichier Bicep.
L’utilisation de l’une des fonctionnalités Bicep suivantes active automatiquement la génération de code version 2.0 du langage :
- types définis par l’utilisateur
- fonctions définies par l’utilisateur
- importations au moment de la compilation
- fonctionnalités expérimentales
L'exemple suivant convertit un fichier Bicep nommé main.bicep en modèle ARM nommé main.json. Le nouveau fichier est créé dans le même répertoire que le fichier Bicep :
L’exemple suivant enregistre main.json dans un autre répertoire :
L’exemple suivant spécifie le nom et l’emplacement du fichier à créer :
Pour imprimer le fichier sur stdout, utilisez :
Si votre fichier Bicep inclut un module qui fait référence à un registre externe, la build commande appelle restoreautomatiquement . La restore commande obtient le fichier à partir du Registre et le stocke dans le cache local.
Remarque
La restore commande n’actualise pas le cache. Pour plus d’informations, consultez restore.
Pour ne pas appeler la commande restore automatiquement, utilisez le commutateur --no-restore :
bicep build --no-restore <bicep-file>
Pour utiliser le --no-restore commutateur, vous devez disposer de l’interface CLI Bicep version 0.4.X ou ultérieure.
Le processus de génération avec le commutateur --no-restore échoue si l’un des modules externes n’est pas déjà mis en cache :
The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" hasn't been restored.
Lorsque vous obtenez cette erreur, exécutez la build commande sans le --no-restore commutateur, ou exécutez d’abord bicep restore .
build-params
La build-params commande génère un .bicepparam fichier dans un fichier de paramètres JSON :
Cette commande convertit un fichier de paramètres params.bicepparam en fichier de paramètres params.json JSON.
decompile
La decompile commande convertit un modèle ARM JSON en fichier Bicep :
Cette commande crée un fichier nommé main.bicep dans le même répertoire que main.json. Si main.bicep existe dans le même répertoire, utilisez le commutateur --force pour remplacer le fichier Bicep existant.
Pour plus d’informations sur l’utilisation de cette commande, consultez Le modèle ARM JSON décompilé sur Bicep.
decompile-params
La decompile-params commande décompile un fichier de paramètres JSON dans un .bicepparam fichier de paramètres.
bicep decompile-params azuredeploy.parameters.json --bicep-file ./dir/main.bicep
Cette commande décompile un fichier de paramètres azuredeploy.parameters.json dans un fichier azuredeploy.parameters.bicepparam .
--bicep-file spécifie le chemin d’accès au fichier Bicep (relatif au .bicepparam fichier) référencé dans la using déclaration.
format
La format commande met en forme un fichier Bicep afin qu’il respecte les conventions de style recommandées. Considérez-le comme un « formateur de code » ou un « prettier » pour vos fichiers Bicep. Il s’agit de la même fonction que le raccourci SHIFT+ALT+F dans Visual Studio Code.
generate-params
La commande generate-params génère un fichier de paramètres à partir du fichier Bicep donné ou effectue une mise à jour si un fichier de paramètres existe.
bicep generate-params main.bicep --output-format bicepparam --include-params all
Cette commande crée un fichier de paramètres Bicep nommé main.bicepparam. Le fichier de paramètres contient tous les paramètres du fichier Bicep, qu’ils soient configurés avec des valeurs par défaut ou non.
Cette commande crée un fichier de paramètres nommé main.parameters.json. Le fichier de paramètres contient uniquement les paramètres sans valeurs par défaut configurées dans le fichier Bicep.
install
La install commande ajoute l’interface CLI Bicep à votre environnement local, et elle est disponible uniquement via Azure CLI. Pour plus d'informations, consultez Installer les outils Bicep.
Pour installer la version la plus récente, utilisez :
Pour installer une version spécifique :
jsonrpc
La jsonrpc commande active l’exécution de l’interface CLI Bicep avec une interface JSON-RPC, ce qui permet une interaction programmatique avec une sortie structurée et évite les retards de démarrage à froid lors de la compilation de plusieurs fichiers. Cette configuration prend également en charge la création de bibliothèques pour interagir avec les fichiers Bicep par programmation dans non-.NET langages.
Le format de câble pour l’envoi et la réception d’entrée/sortie est délimité par l’en-tête, à l’aide de la structure suivante, où \r et \n représentent les caractères de retour chariot et de flux de ligne :
Content-Length: <length>\r\n\r\n<message>\r\n\r\n
-
<length>est la longueur de la<message>chaîne, y compris la fin\r\n\r\n. -
<message>est le message JSON brut.
Par exemple :
Content-Length: 72\r\n\r\n{"jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {}}\r\n\r\n
Les méthodes suivantes sont disponibles via l’interface JSON-RPC :
bicep/format
Met en forme un fichier Bicep.
La demande :
{ "jsonrpc": "2.0", "id": 1, "method": "bicep/format", "params": { "path": "/path/to/file.bicep" } }Réponse :
{ "jsonrpc": "2.0", "id": 1, "result": { "success": true, "diagnostics": [], "contents": "param foo string\n\nresource storage 'Microsoft.Storage/storageAccounts@2025-01-01' = {\n name: 'mystorageaccount'\n location: 'East US'\n}\n" } }En cas de réussite,
"success": trueest retourné, avec le contenu contenant la source Bicep mise en forme. En cas d’échec,"success": falseendiagnosticsdécrivant l’échec.
bicep/version
Retourne la version de l’interface CLI Bicep.
La demande :
{ "jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {} }Réponse :
{ "jsonrpc": "2.0", "id": 0, "result": { "version": "0.24.211" } }
Pour connaître les méthodes disponibles et les corps de requête/réponse, consultez ICliJsonRpcProtocol.cs.
Pour obtenir un exemple d’établissement d’une connexion JSONRPC et d’interaction avec des fichiers Bicep par programmation à l’aide de Node, consultez jsonrpc.test.ts.
Utilisation du canal nommé
Utilisez la syntaxe suivante pour vous connecter à un canal nommé existant en tant que client JSONRPC :
bicep jsonrpc --pipe <named_pipe>`
<named_pipe> est un canal nommé existant auquel connecter le client JSONRPC.
Pour vous connecter à un canal nommé sur OSX/Linux :
Pour vous connecter à un canal nommé sur Windows :
bicep jsonrpc --pipe \\.\pipe\\bicep-81375a8084b474fa2eaedda1702a7aa40e2eaa24b3.sock`
Pour plus d’exemples, consultez C# et node.js.
Utilisation du socket TCP
Utilisez la syntaxe suivante pour vous connecter à un socket TCP existant en tant que client JSONRPC :
bicep jsonrpc --socket <tcp_socket>
<tcp_socket> est le numéro de socket auquel le client JSONRPC se connecte.
Pour vous connecter à un socket TCP :
Utilisation de stdin et stdout
Utilisez la syntaxe suivante et stdin pour que stdout les messages exécutent l’interface JSONRPC :
lint
La lint commande retourne les erreurs et les violations de règle linter d’un fichier Bicep.
Si votre fichier Bicep inclut un module qui fait référence à un registre externe, la lint commande appelle restoreautomatiquement . La restore commande obtient le fichier à partir du Registre et le stocke dans le cache local.
Remarque
La restore commande n’actualise pas le cache. Pour plus d’informations, consultez restore.
Pour ne pas appeler la commande restore automatiquement, utilisez le commutateur --no-restore :
Le processus lint avec le commutateur --no-restore échoue si l’un des modules externes n’est pas déjà mis en cache :
The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" has not been restored.
Quand vous recevez cette erreur, vous devez exécuter la commande lint sans le commutateur --no-restore ou exécuter bicep restore en premier.
list-versions
La commande list-versions renvoie toutes les versions disponibles de l'interface CLI Bicep. Utilisez cette commande pour savoir si vous devez mettre à niveau ou installer une nouvelle version. Cette commande est disponible uniquement via Azure CLI.
Publier
La commande publish ajoute un module à un registre. Le registre de conteneurs Azure doit exister et le compte qui publie dans le registre doit disposer des autorisations appropriées. Pour plus d’informations sur la configuration d’un registre de modules, consultez Utiliser un registre privé pour les modules Bicep. Pour publier un module, le compte doit disposer du profil et des autorisations appropriés pour accéder au registre. Vous pouvez configurer le profil et les informations d’identification prioritaires pour l’authentification auprès du registre dans le fichier de configuration de Bicep.
Après avoir publié le fichier dans le registre, vous pouvez le référencer dans un module.
Vous devez disposer de Bicep CLI version 0.14.X ou ultérieure pour utiliser la publish commande et le --documentationUri/-d paramètre.
Pour publier un module dans un registre, utilisez :
bicep publish <bicep-file> --target br:<registry-name>.azurecr.io/<module-path>:<tag> --documentationUri <documentation-uri>
Par exemple :
bicep publish storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1 --documentationUri https://www.contoso.com/exampleregistry.html
La publish commande ne reconnaît pas les alias spécifiés dans un fichier bicepconfig.json. Indiquez le chemin d’accès complet au module.
Avertissement
La publication sur la même cible remplace l’ancien module. Nous vous recommandons d’incrémenter la version lors de la mise à jour.
restauration
Lorsque votre fichier Bicep utilise des modules qui sont publiés dans un registre, la commande restore obtient des copies de tous les modules requis à partir du registre. Elle stocke ces copies dans un cache local. Un fichier Bicep ne peut être généré que lorsque les fichiers externes sont disponibles dans le cache local. L’exécution de la commande restore n’est normalement pas nécessaire, car elle est automatiquement déclenchée par le processus de génération.
Pour restaurer des modules externes dans le cache local, le compte doit disposer du profil et des autorisations appropriées pour accéder au registre. Vous pouvez configurer le profil et les informations d’identification prioritaires pour l’authentification auprès du registre dans le fichier de configuration de Bicep.
Pour utiliser la restore commande, vous devez disposer de Bicep CLI version 0.14.X ou ultérieure.
Pour restaurer manuellement les modules externes d’un fichier, utilisez :
Le fichier Bicep que vous fournissez est le fichier que vous souhaitez déployer. Il doit contenir un module qui établit un lien vers un registre. Par exemple, vous pouvez restaurer le fichier suivant :
module stgModule 'br:exampleregistry.azurecr.io/bicep/modules/storage:v1' = {
name: 'storageDeploy'
params: {
storagePrefix: 'examplestg1'
}
}
Le cache local se trouve sous :
Sur Windows
%USERPROFILE%\.bicep\br\<registry-name>.azurecr.io\<module-path\<tag>Sur Linux
/home/<username>/.bicepSur Mac
~/.bicep
La commande restore n’actualise pas le cache si un module est déjà mis en cache. Pour actualiser le cache, vous pouvez supprimer le chemin du module du cache ou utiliser le commutateur avec la --forcerestore commande.
upgrade
La commande upgrade procède à la mise à jour de la version installée vers la dernière version. Cette commande est disponible uniquement via Azure CLI.
version
La version commande retourne votre version installée :
bicep --version
Si l’interface CLI Bicep n’a pas été installée, un message d’erreur s’affiche indiquant que l’interface CLI Bicep n’a pas été trouvée.
La commande affiche le numéro de version :
Bicep CLI version 0.29.45 (57a44c0230)
Étapes suivantes
Pour en savoir plus sur le déploiement d’un fichier Bicep, consultez :