<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr"><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://woivre.fr/feed.xml" rel="self" type="application/atom+xml" /><link href="https://woivre.fr/" rel="alternate" type="text/html" hreflang="fr" /><updated>2026-04-14T17:28:18+00:00</updated><id>https://woivre.fr/feed.xml</id><title type="html">Wilfried Woivré</title><subtitle>Blog personnel de Wilfried Woivre parlant des sujets Azure, Cloud, Serverless, Container, ...</subtitle><author><name>Wilfried Woivré</name></author><entry><title type="html">Azure - Trouver la zone qui correspond à votre souscription</title><link href="https://woivre.fr/blog/2026/04/azure-trouver-la-zone-qui-correspond-a-votre-souscription" rel="alternate" type="text/html" title="Azure - Trouver la zone qui correspond à votre souscription" /><published>2026-04-10T00:00:00+00:00</published><updated>2026-04-10T00:00:00+00:00</updated><id>https://woivre.fr/blog/2026/04/azure-trouver-la-zone-qui-correspond-a-votre-souscription</id><content type="html" xml:base="https://woivre.fr/blog/2026/04/azure-trouver-la-zone-qui-correspond-a-votre-souscription"><![CDATA[<p>Il est parfois nécessaire de trouver la zone physique qui correspond à la zone logique attachée à votre souscription Azure.</p>

<p>Pourquoi me direz-vous ? Et bien pour des raisons de conformité, de performance ou de latence, il peut être crucial de savoir où se trouvent physiquement vos ressources Azure. Mais aussi pour des problèmes de capacités, il peut être nécessaire de savoir si les zones concernées ont assez de ressources pour héberger vos infrastructures.</p>

<p>Et cela vous permet aussi de gérer vos paramètres pour votre CI/CD pour s’assurer que les ressources se déploient dans les zones où les ressources sont disponibles.</p>

<p>Par exemple sur le firewall Azure, il y a en ce moment des contraintes sur les capacités comme le montre ce lien : <a href="https://learn.microsoft.com/en-us/azure/firewall/firewall-known-issues?WT.mc_id=AZ-MVP-4039694#current-capacity-constraints">Azure Documentation</a></p>

<p>Vous pouvez donc savoir quelle est la zone que vous utilisez pour votre souscription en utilisant la commande suivante :</p>

<pre><code class="language-bash">az account list-locations --query "[?availabilityZoneMappings].{availabilityZoneMappings: availabilityZoneMappings, displayName: displayName, name: name}"
</code></pre>

<p>Cette commande vous donnera une liste de toutes les zones disponibles pour votre souscription, ainsi que les zones de disponibilité associées à chaque zone. Vous pourrez ainsi identifier la zone physique qui correspond à la zone logique que vous utilisez pour vos ressources Azure.</p>

<p>Et si vous préférez une interface graphique je vous recommande le site <a href="https://app.az-scout.com/">App Scout</a> qui vous permettra de visualiser les différentes zones et leurs capacités en temps réel. C’est un outil très pratique pour gérer vos ressources Azure de manière efficace. Voici ce que cela donne pour la zone West Europe :</p>

<p><img src="https://woivre.fr/images/2026/04/10/azure-trouver-la-zone-qui-correspond-a-votre-souscription-img0.png" alt="alt text" /></p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><summary type="html"><![CDATA[Il est parfois nécessaire de trouver la zone physique qui correspond à la zone logique attachée à votre souscription Azure.]]></summary></entry><entry><title type="html">Azure Sandbox - Une petite évolution pour les utilisateurs de Copilot dans VSCode</title><link href="https://woivre.fr/blog/2026/03/azure-sandbox-une-petite-evolution-pour-les-utilisateurs-de-copilot-dans-vscode" rel="alternate" type="text/html" title="Azure Sandbox - Une petite évolution pour les utilisateurs de Copilot dans VSCode" /><published>2026-03-24T00:00:00+00:00</published><updated>2026-03-24T00:00:00+00:00</updated><id>https://woivre.fr/blog/2026/03/azure-sandbox-une-petite-evolution-pour-les-utilisateurs-de-copilot-dans-vscode</id><content type="html" xml:base="https://woivre.fr/blog/2026/03/azure-sandbox-une-petite-evolution-pour-les-utilisateurs-de-copilot-dans-vscode"><![CDATA[<p>Comme tout le monde, vous n’avez pas pu rater le virage de l’IA. Maintenant je suppose que vous l’utilisez de plus en plus comme nous tous.</p>

<p>Il y a quelques années j’avais créé un système de Sandbox Azure qui me permet simplement de créer des resources group éphémères. Avec un simple script, je pouvais créer un resource group, faire mes tests, et ensuite la suppression est automatique en fonction de la date ajouté dans un tag. Rien de plus simple.</p>

<p>Maintenant pour faire cela, j’utilise principalement une fonction dans mon profil Powershell pour créer des resources groups. La fameuse fonction <em>New-AzTestResourceGroup</em> que certains d’entre vous l’ont peut être déja aperçu dans des démos que je fais.</p>

<p>Maintenant avec l’IA, c’est tellement plus rapide de dire à copilot “Créer moi un resource group <em>demo-rg</em> en <em>France Central</em> et ajoute moi un compte de stockage. Top au niveau de gain de temps, car en plus il va vous générer votre fichier de déploiement qui va bien. Cependant le resource group n’a pas toujours les bons tags.</p>

<p>Il y a une manière très simple de rajouter cela, il suffit de demander à Copilot de rajouter les différents tags que vous souhaitez à chaque fois que vous créer un resource group. Vous pouvez lui demander de scoper ce rajout à votre workspace. Mais aussi en global en ajoutant un fichier dans votre répertoire utilisateur.</p>

<p>Voici un exemple de fichier que vous pouvez ajouter dans votre répertoire utilisateur pour que Copilot puisse ajouter les tags automatiquement à chaque fois que vous créer un resource group.</p>

<pre><code class="language-markdown"># Azure Resource Group Tagging Convention

## Mandatory Tags for Resource Groups
When creating Azure resource groups, always add the following tags:

- **AutoDelete**: `true`
- **ExpirationDate**: Current date in format `YYYY-MM-DD` (e.g., 2026-03-05)

## Implementation
- Apply these tags when using Bicep, Terraform, ARM templates, or Azure CLI
- Use `resourceGroup()` function in Bicep or equivalent in other IaC tools
- Set tags at resource group creation time, not as an afterthought
</code></pre>

<p>Et pour le chemin il s’agit de celui ci : <em>C:\Users\YourUserName\AppData\Roaming\Code\User\globalStorage\github.copilot-chat\memory-tool\memories</em></p>

<p>Et pouv finir voici de lien de l’aricle pour la sandbox : <a href="https://woivre.fr/blog/2018/11/sandbox-azure-pour-tout-le-monde">https://woivre.fr/blog/2018/11/sandbox-azure-pour-tout-le-monde</a></p>

<p>Voilà une petite astuce pour ne pas oublier de clean vos rsources après vos tests.</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><summary type="html"><![CDATA[Comme tout le monde, vous n’avez pas pu rater le virage de l’IA. Maintenant je suppose que vous l’utilisez de plus en plus comme nous tous.]]></summary></entry><entry><title type="html">Azure Advisor - Gérer vos recommendations à l’échelle</title><link href="https://woivre.fr/blog/2026/02/azure-advisor-gerer-vos-recommendations-a-lechelle" rel="alternate" type="text/html" title="Azure Advisor - Gérer vos recommendations à l’échelle" /><published>2026-02-11T00:00:00+00:00</published><updated>2026-02-11T00:00:00+00:00</updated><id>https://woivre.fr/blog/2026/02/azure-advisor-gerer-vos-recommendations-a-lechelle</id><content type="html" xml:base="https://woivre.fr/blog/2026/02/azure-advisor-gerer-vos-recommendations-a-lechelle"><![CDATA[<p>Azure Advisor est un service Azure qui vous fournit pleins de recommandations sur vos environnements que ce soit en terme de sécurité, de coûts, ou de résilience. Cet outil est très bien, mais je sais qu’il peut être assez fastidieux de devoir le gérer et de prendre en compte toutes les recommandations qui sont proposées à l’échelle d’une entreprise.</p>

<p>Si vous avez un environnement Azure que je qualifierais de standardisé et qui s’étend à plusieurs souscriptions. Il peut être tentant de vouloir refuser des recommandations ou du moins les reporter à plus tard.</p>

<p>Vous pouvez le faire rapidement via un script PowerShell ou autre.
Pour cela, vous pouvez commencer par lister les différentes recommandations qui sont proposées via la commande suivante :</p>

<pre><code class="language-powershell">Get-AzAdvisorRecommendation -SubscriptionId &lt;SubscriptionId&gt;
</code></pre>

<p>Ensuite, vous pouvez filtrer les recommandations que vous souhaitez refuser ou reporter à plus tard. Par exemple, si vous souhaitez reporter une recommandation pour 90 jours, vous pouvez utiliser la commande suivante :</p>

<pre><code class="language-powershell">Disable-AzAdvisorRecommendation -RecommendationName e33855d4-7579-e4d0-c459-23fad3665bd6 -Day 90
</code></pre>

<p>Et si vous voulez simplement reporter un type de recommandation globalement , vous pouvez utiliser la commande suivante :</p>

<pre><code class="language-powershell">get-azAdvisorRecommendation | Where { $_.RecommendationTypeId -eq $recommendationId } | % { $_ | Disable-AzAdvisorRecommendation -Day 120 }
</code></pre>

<p>Allez objectif 2026, on gère les recommandations à l’échelle ! Et plus aucune active sans action planifiée !</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Azure Advisor" /><summary type="html"><![CDATA[Azure Advisor est un service Azure qui vous fournit pleins de recommandations sur vos environnements que ce soit en terme de sécurité, de coûts, ou de résilience. Cet outil est très bien, mais je sais qu’il peut être assez fastidieux de devoir le gérer et de prendre en compte toutes les recommandations qui sont proposées à l’échelle d’une entreprise.]]></summary></entry><entry><title type="html">Azure - Mettez à jour vos boot diagnostics pour vos VM</title><link href="https://woivre.fr/blog/2026/01/azure-mettez-a-jour-vos-boot-diagnostics-pour-vos-vm" rel="alternate" type="text/html" title="Azure - Mettez à jour vos boot diagnostics pour vos VM" /><published>2026-01-27T00:00:00+00:00</published><updated>2026-01-27T00:00:00+00:00</updated><id>https://woivre.fr/blog/2026/01/azure-mettez-a-jour-vos-boot-diagnostics-pour-vos-vm</id><content type="html" xml:base="https://woivre.fr/blog/2026/01/azure-mettez-a-jour-vos-boot-diagnostics-pour-vos-vm"><![CDATA[<p>Comme vous le savez tous les logs c’est important, il y en a un qu’on sous estime pas mal c’est le boot diagnostics, au moins pour savoir si la VM a bien démarré.
Précédemment dans Azure, on avait la possibilité de configurer le boot diagnostics en s’appuyant sur un storage pour stocker les différentes informations.</p>

<p>Depuis un moment, Microsoft a mis à jour la configuration du boot diagnostics pour les machines virtuelles Azure. Désormais, il est possible de configurer le boot diagnostics sans avoir besoin de créer un compte de stockage dédié. Ou du moins il est maintenant entièrement managé par Microsoft.</p>

<p>Voici une requête Graph pour détecter toutes vos VMs qui ne sont pas encore passé sur ce nouveau mode de boot diagnostics :</p>

<pre><code class="language-kql">resources
| where type =~ "microsoft.compute/virtualMachines"
| where properties.diagnosticsProfile.bootDiagnostics.enabled == true
| where isnotnull(properties.diagnosticsProfile.bootDiagnostics.storageUri)
</code></pre>

<p>Si cela peut vous éviter des storages dédiés au boot diagnostics, c’est toujours une ressource de moins à gérer et à sécuriser, et cela simplifie la configuration de vos machines virtuelles.</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Virtual Machines" /><summary type="html"><![CDATA[Comme vous le savez tous les logs c’est important, il y en a un qu’on sous estime pas mal c’est le boot diagnostics, au moins pour savoir si la VM a bien démarré. Précédemment dans Azure, on avait la possibilité de configurer le boot diagnostics en s’appuyant sur un storage pour stocker les différentes informations.]]></summary></entry><entry><title type="html">Azure Network - Fini les subnets publiques</title><link href="https://woivre.fr/blog/2025/12/azure-network-fini-les-subnets-publiques" rel="alternate" type="text/html" title="Azure Network - Fini les subnets publiques" /><published>2025-12-15T00:00:00+00:00</published><updated>2025-12-15T00:00:00+00:00</updated><id>https://woivre.fr/blog/2025/12/azure-network-fini-les-subnets-publiques</id><content type="html" xml:base="https://woivre.fr/blog/2025/12/azure-network-fini-les-subnets-publiques"><![CDATA[<p>Fin mars 2026, Microsoft a annoncé une mise à jour importante concernant les subnets publics dans Azure. Désormais, les subnets seront privés par défaut, ce qui signifie que les ressources déployées dans ces subnets n’auront pas d’accès direct à Internet. Cette décision a été prise pour renforcer la sécurité des environnements Azure et encourager les bonnes pratiques en matière de réseau.</p>

<p>Alors concrétement que’est ce que cela change pour vous ? Et bien, si vous êtes en entreprise avec du Zero Trust, du hub &amp; Spoke, cela ne change concrétement rien que pour vous. Car les subnets dans vos spokes sont par nature déjà privés, vu qu’ils passent par votre hub pour accéder à internet.</p>

<p>Par contre, pour les plus petits environnements, il faudra bien penser soit à remettre vos subnets en public, soit expliciter l’accès à internet via une NAT Gateway, un Firewall, ou un Load balancer avec une outbound rule ou une IP statique sur vos VMS.</p>

<p>Concrètement, votre route table que ce soit implicite ou explicite vers Internet est désactivée, il faut donc la remplacer par une route directe.
Le plus simple est de mettre en place une NAT Gateway, mais attention au coût de cette dernière car le coût est aussi basé sur les datas qui transitent par celle ci.</p>

<p>Microsoft fourni des exemples pour le private subnet, je vous conseille d’y jeter un oeil : <a href="https://github.com/Azure-Samples/azure-networking_private-subnet-routing">GitHub - Azure Networking Private Subnet Routing</a></p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Network" /><summary type="html"><![CDATA[Fin mars 2026, Microsoft a annoncé une mise à jour importante concernant les subnets publics dans Azure. Désormais, les subnets seront privés par défaut, ce qui signifie que les ressources déployées dans ces subnets n’auront pas d’accès direct à Internet. Cette décision a été prise pour renforcer la sécurité des environnements Azure et encourager les bonnes pratiques en matière de réseau.]]></summary></entry><entry><title type="html">Azure VM - La permission RunCommand</title><link href="https://woivre.fr/blog/2025/11/azure-vm-la-permission-runcommand" rel="alternate" type="text/html" title="Azure VM - La permission RunCommand" /><published>2025-11-04T00:00:00+00:00</published><updated>2025-11-04T00:00:00+00:00</updated><id>https://woivre.fr/blog/2025/11/azure-vm-la-permission-runcommand</id><content type="html" xml:base="https://woivre.fr/blog/2025/11/azure-vm-la-permission-runcommand"><![CDATA[<p>Juste un rapide article pour vous parler de la permission RunCommand sur les machines virtuelles.</p>

<p>Celle ci est très pratique, j’en conviens et je l’utilise régulièrement, mais elle peut aussi être dangereuse si elle est donnée à des personnes qui ne devraient pas l’avoir.</p>

<p>En effet la permission sur Windows tourne en temps que SYSTEM, et peut donc faire n’importe quoi sur la machine virtuelle, y compris installer des logiciels malveillants ou voler des données sensibles, ou désactiver des services de sécurité.
Et sur Linux, ce n’est pas mieux elle tourne en tant que sudo, et peut aussi faire n’importe quoi.</p>

<p>Et pour couronner le tout, une fois que vous avez fait run, il n’est pas possible de stopper la commande, donc ne copiez pas des commandes que vous ne comprenez pas, ou que vous n’avez pas vérifiées, et ne les faites pas tourner sur des machines de production sans les avoir testées au préalable dans un environnement de test.</p>

<p>Donc ne donnez pas cette permission <em>Microsoft.Compute/virtualMachines/runCommand/action</em> à n’importe qui, et assurez vous que les personnes qui l’ont sont de confiance et savent ce qu’elles font. Où alors donnez le sur des machines dans des sandbox qui n’ont pas accès à vos environnements de production.</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Virtual Machines" /><summary type="html"><![CDATA[Juste un rapide article pour vous parler de la permission RunCommand sur les machines virtuelles.]]></summary></entry><entry><title type="html">Azure Network - Agrandir vos subnets, c’est possible !</title><link href="https://woivre.fr/blog/2025/10/azure-network-agrandir-vos-subnets-cest-possible" rel="alternate" type="text/html" title="Azure Network - Agrandir vos subnets, c’est possible !" /><published>2025-10-17T00:00:00+00:00</published><updated>2025-10-17T00:00:00+00:00</updated><id>https://woivre.fr/blog/2025/10/azure-network-agrandir-vos-subnets-cest-possible</id><content type="html" xml:base="https://woivre.fr/blog/2025/10/azure-network-agrandir-vos-subnets-cest-possible"><![CDATA[<p>Vous vous êtes déjà retrouvé dans le cas où vous avez été un peu trop radin (ou optimiste) sur la gestion de vos IPs, et que vous n’avez attribuez qu’un minuscule range /28 à une application sans vous doutez que demain elle ellait exploser et devoir demander un range plus grand pour fonctionner.</p>

<p>Précédemment, la réponse était très souvent quelque chose du genre “Désolé, il n’est pas possible d’agrandir un subnet, il faut en créer un nouveau et migrer les ressources ou garder 2 subnets disjoints. Il faudra bien le spécifier à chaque fois que vous faîtes des ouvertures de routes, ou que l’on doit modifier des routes tables”.</p>

<p>Bon maintenant, bonne nouvelle il est possible d’ajouter un deuxième address prefixe à votre subnet comme cela</p>

<pre><code class="language-powershell">$vnet = Get-AzVirtualNetwork -ResourceGroupName 'test-rg' -Name 'vnet-1'
Set-AzVirtualNetworkSubnetConfig -Name 'subnet-1' -VirtualNetwork $vnet -AddressPrefix '10.0.0.0/24', '10.0.1.0/24'
$vnet | Set-AzVirtualNetwork
</code></pre>

<p>L’avantage ici c’est que si vous avez la chance d’avoir des subnets joints comme dans l’exemple ci-dessus, vos ouvertures de routes passe simplement d’une 10.0.0.0/24 à un 10.0.0.0/23, et cela simplifie grandement vos opérations.</p>

<p>Mais aussi votre scale set à l’intérieur de votre subnet peut maintenant scale à 300 noeuds sans à avoir à déplacer votre workload dans un nouveau subnet. Mais aussi possible pour les GatewaySubnet si vous avez fait l’erreur de la créer en /29 pour mettre un simple Point to Site, et que vous voulez maintenant faire du VPN S2S ou du ExpressRoute.</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Network" /><summary type="html"><![CDATA[Vous vous êtes déjà retrouvé dans le cas où vous avez été un peu trop radin (ou optimiste) sur la gestion de vos IPs, et que vous n’avez attribuez qu’un minuscule range /28 à une application sans vous doutez que demain elle ellait exploser et devoir demander un range plus grand pour fonctionner.]]></summary></entry><entry><title type="html">Azure - Des limitations pas si loin</title><link href="https://woivre.fr/blog/2025/09/azure-des-limitations-pas-si-loin" rel="alternate" type="text/html" title="Azure - Des limitations pas si loin" /><published>2025-09-07T00:00:00+00:00</published><updated>2025-09-07T00:00:00+00:00</updated><id>https://woivre.fr/blog/2025/09/azure-des-limitations-pas-si-loin</id><content type="html" xml:base="https://woivre.fr/blog/2025/09/azure-des-limitations-pas-si-loin"><![CDATA[<p>Le Cloud est infini, c’est ce que l’on entend souvent. Mais est-ce vraiment le cas ? En réalité, il existe des limitations dans le Cloud, et Azure ne fait pas exception. Ces limitations peuvent être liées à la capacité, à la performance, à la sécurité ou à d’autres aspects.</p>

<p>Alors c’est certes quelque chose de bien connue, mais je vois tellement de personnes qui l’oublie ou qui se disent qu’ils ne seront pas touchés par ces limitations.</p>

<p>Donc commençons par la documentation officielle d’Azure qui liste les différentes limitations : <a href="https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits?WT.mc_id=AZ-MVP-4039694">https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits</a></p>

<p>Ces limites peuvent vous paraître très lointaines par rapport à votre utilisation actuelle, mais vous pouvez les atteindre plus rapidement que vous ne le pensiez.</p>

<p>Par exemple mettre en place des bundles d’Azure Policy pour chaque type de resource et de risques, il y a une limite sur le nombre de définition custom par scope. Cela peut donc être un challenge au niveau de votre architecture de gouvernance, soit vous devez utiliser des initiatives, soit créer plusieurs scopes ou alors utilisez d’avantages de policy built-in.</p>

<p>Les custom role definition ont une limite au tenant aussi. Vous ne pouvez donc pas laisser tous vos utilisateurs créer des rôles personnalisés à tout va, sinon vous risquez d’atteindre cette limite plus rapidement que prévu, et de perdre la gouvernance sur les rôles qui existent.</p>

<p>Pour les gros utilisateurs d’Azure API Management, sachez entre autre qu’il y a des limites sur le nombre d’operations / instance. Et ce nombre comprend entre autre les opérations présente sur les révisions. Et par défaut le service n’offre pas de métrique simple pour vérifier si vous allez atteindre ou non cette limite, c’est donc à vous de la calculer et de bien gérer vos révisions non utilisées, ainsi que les API obsolètes.</p>

<p>De même pour Azure Firewall, il y a des limites sur le nombre de règles que vous pouvez créer. Et le calcul d’une règle correspond à 1 source, 1 destination, 1 port globalement. Donc si vous ajoutez la réglé <strong>Allow TCP 9093 from 10.0.0.0/24 and 10.0.1.0/24 to 10.1.0.0/24</strong> cela correspond à 2 règles. Pour limiter cela il est possible de faire des ip groups, ou d’ouvrir en plus large quand cela est possible. Mais cela peut vite devenir un challenge de gérer ces règles, surtout si vous avez plusieurs équipes qui gèrent le firewall.</p>

<p>Mon conseil est donc pour chaque nouveau service que vous ouvrez sur votre plateforme, ou de chaque nouvelle fonctionnalité que vous offrez en <em>self-service</em> à vos utilisateurs, posez vous la question des limites et s’il est possible de les atteindre.
Et n’oubliez pas que même si ces limites peuvent évoluer dans le temps, il est nécessaire d’appliquer tous vos processus régaliens autour de ces ressources comme l’inventaire et une gestion rigoureuse du cycle de vie.</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><summary type="html"><![CDATA[Le Cloud est infini, c’est ce que l’on entend souvent. Mais est-ce vraiment le cas ? En réalité, il existe des limitations dans le Cloud, et Azure ne fait pas exception. Ces limitations peuvent être liées à la capacité, à la performance, à la sécurité ou à d’autres aspects.]]></summary></entry><entry><title type="html">Bicep - Utiliser le mode Local</title><link href="https://woivre.fr/blog/2025/08/bicep-utiliser-le-mode-local" rel="alternate" type="text/html" title="Bicep - Utiliser le mode Local" /><published>2025-08-06T00:00:00+00:00</published><updated>2025-08-06T00:00:00+00:00</updated><id>https://woivre.fr/blog/2025/08/bicep-utiliser-le-mode-local</id><content type="html" xml:base="https://woivre.fr/blog/2025/08/bicep-utiliser-le-mode-local"><![CDATA[<p>Il peut être frustant de devoir toujours lancer un déploiement Bicep vers Azure lorsque vous êtes en cours d’écriture de votre script. Et bien entendu vous ne voulez pas lancer votre déploiement après avoir construit à l’aveugle votre Landing Zone après 1 semBicaine de travail acharné. (ou 2h si vous utilisez AVM.)</p>

<p>Heureusement, Bicep propose un mode “local” qui vous permet de valider votre code Bicep sans avoir à déployer dans Azure. Cela peut être particulièrement utile pour vérifier la syntaxe, les types de ressources, et les dépendances entre les ressources.</p>

<p>Mais attention, cependant cela ne prend pas tout en compte, vu que vous ne déployez pas réellement les ressources.</p>

<p>Cela peut ppar contre être bien utile lorsque vous voulez vérifier rapidement la syntaxe, ou lorsque vous travaillez sur des fonctions personnalisées qui peuvent être complexes.</p>

<p>Pour cela il faut éditer votre fichier de configuration Bicep: bicepconfig.json</p>

<pre><code class="language-json">{
   "experimentalFeaturesEnabled": {
    "localDeploy": true
  }
}
</code></pre>

<p>Et vous pouvez ensuite éditer votre fichier bicep avec le targetscope à local :</p>

<pre><code class="language-bicep">targetScope = 'local'


var test = 'Hello, Bicep!'


output greeting string = test

</code></pre>

<p>ET franchement cela est bien pratique lorsque vous travaillez sur des fonctions un peu complexes ou vous pouvez calculer en local (et en mobilité sans une connexion internet)</p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Bicep" /><summary type="html"><![CDATA[Il peut être frustant de devoir toujours lancer un déploiement Bicep vers Azure lorsque vous êtes en cours d’écriture de votre script. Et bien entendu vous ne voulez pas lancer votre déploiement après avoir construit à l’aveugle votre Landing Zone après 1 semBicaine de travail acharné. (ou 2h si vous utilisez AVM.)]]></summary></entry><entry><title type="html">Bicep - Le panneau de déploiement intégré dans VS Code</title><link href="https://woivre.fr/blog/2025/07/bicep-le-panneau-de-deploiement-integre-dans-vs-code" rel="alternate" type="text/html" title="Bicep - Le panneau de déploiement intégré dans VS Code" /><published>2025-07-17T00:00:00+00:00</published><updated>2025-07-17T00:00:00+00:00</updated><id>https://woivre.fr/blog/2025/07/bicep-le-panneau-de-deploiement-integre-dans-vs-code</id><content type="html" xml:base="https://woivre.fr/blog/2025/07/bicep-le-panneau-de-deploiement-integre-dans-vs-code"><![CDATA[<p>Bon c’est sûrement un peu tardif comme article, je n’ai pas vérifié.
Mais je suis tombé dessus un peu par hasard. Dans VS Code il y a un panneau de configuration pour lancer vos déploiements Bicep.</p>

<p>Avant d’en parler un peu plus, je rappelle que déployer depuis votre VS Code par défaut c’est mal, il y a plein d’outils de CI/CD qui sont là pour ça, comme Github Actions. Mais bon pour des raisons de tests on va avouer que c’est quand même bien pratique.</p>

<p>Avant je faisais comme beaucoup avec la commande intégrée de <em>Bicep: Deploy Bicep file…</em></p>

<p>Mais si vous créer un fichier de paramétrage de type bicepparam, il est possible d’afficher un panneau de déploiement qui ressemble à cela :</p>

<p><img src="https://woivre.fr/images/2025/07/17/bicep-le-panneau-de-deploiement-integre-dans-vs-code-img0.png" alt="alt text" /></p>

<p>Et dans celui là ce qui va vous changer la vie (en tout cas la mienne) c’est le fait de pouvoir sélectionner un scope et qu’il le retienne. Donc pas besoin de spammer la toucher entrée après avoir lancé la commande <em>Bicep: Deploy Bicep file…</em></p>]]></content><author><name>Wilfried Woivré</name></author><category term="Azure" /><category term="Bicep" /><summary type="html"><![CDATA[Bon c’est sûrement un peu tardif comme article, je n’ai pas vérifié. Mais je suis tombé dessus un peu par hasard. Dans VS Code il y a un panneau de configuration pour lancer vos déploiements Bicep.]]></summary></entry></feed>