Étiquette : DevOps

Photo de travail candid montrant des développeurs concentrés sur un ordinateur portable près d'un dispositif de simulation locale.

LocalStack pour Azure en avant-première : tester les services Microsoft en local

LocalStack a lancé son émulateur pour Azure en avant-première publique. Ce service permet aux équipes de construire, valider et tester des applications Azure directement sur leur poste de travail, sans avoir à solliciter des ressources de développement dans le cloud ni à engager de coûts de facturation. L’outil accepte les modèles d’infrastructure existants – qu’il s’agisse de modèles ARM, de Bicep ou de modules Terraform – sans nécessiter de réécriture du code.

L’objectif affiché est de fournir un bac à sable isolé à chaque développeur. Cela élimine les conflits de tests lorsque plusieurs équipes utilisent un environnement de développement partagé. De plus, LocalStack positionne cet outil pour les agents d’IA, leur offrant un espace où ils peuvent « déployer, échouer et réessayer » sans utiliser d’identifiants réels et sans engendrer de dépenses cloud imprévues.

Le périmètre des services pris en charge est assez large, incluant Azure Kubernetes Service (AKS), Azure Functions, Cosmos DB, Key Vault, et d’autres. Cependant, les précisions des contributeurs sont assez franches quant à la fidélité de l’émulation. Par exemple, en ce qui concerne les comptes de stockage, la documentation indique que sur les 81 opérations possibles, seulement 13 sont implémentées.

Vue de dessus d'une table de travail avec un ordinateur portable affichant des modèles d'infrastructure et des notes techniques.

Les divergences entre l’émulateur et le service réel d’Azure sont notables, surtout au niveau de l’authentification. Pour les requêtes de données, un jeton bearer réussit tant qu’il est présent, même si l’application n’a pas activé l’application des contrôles d’accès (RBAC). Par ailleurs, si l’on tente d’utiliser un jeton SAS restreint à une adresse IP publique, l’émulateur refuse la requête car il ne voit que l’adresse locale de la machine, comme une adresse loopback.

Le projet est mené par Paolo Salvatori, qui a établi un contrat de fidélité simple : « Si votre solution fonctionne parfaitement sur Azure mais échoue sur notre émulateur, c’est notre bug à corriger » (InfoQ).

L’émulateur promet de valider le code qui fonctionne sur Azure mais plante en environnement local. Les failles documentées décrivent souvent le scénario inverse : une application configurée avec l’option httpsOnly peut se comporter en HTTP localement, et des requêtes munies d’un jeton bearer sont acceptées même sans vérification d’identité.

En ce qui concerne l’expérience développeur, certains éléments avancés, tels que l’Inspecteur d’applications ou les APIs de chaos, ne font pas partie de cette première version. De plus, un point technique mérite attention : une application Web créée sur un plan Windows pourrait exécuter son code dans un environnement Linux, ce qui peut provoquer des échecs de build sur Apple Silicon.

La généralisation de ce service est prévue pour début 2027. Pour l’instant, l’accès en avant-première est gratuit et autonome, mais les modalités de transition vers la version stable ne sont pas encore totalement définies, le terme « 30 jours » apparaissant encore comme un simple marqueur sur la page produit.

Sources