Que fait pulumi-arm-to-pulumi ?
Convertir ou migrer des modèles ARM (Azure Resource Manager), des modèles Bicep ou du code vers Pulumi, y compris l'importation de ressources Azure existantes. Cette compétence DOIT être chargée chaque fois qu'un utilisateur demande la migration, la conversion ou l'importation de modèles ARM, de modèles Bicep, de code ARM, de code Bicep ou de ressources Azure vers Pulumi.
Fonctionnalités
- Conversion de modèles ARM : Transforme les fichiers
azuredeploy.json(modèles ARM) en code Pulumi. - Conversion de Bicep : Transforme les fichiers
main.bicep(modèles Bicep) en code Pulumi. - Importation de ressources Azure : Importe des ressources Azure existantes (ex.
azurerm_virtual_network,azurerm_linux_virtual_machine) dans l'état de Pulumi pour une gestion continue. - Supporte plusieurs langages : Génère du code en TypeScript, Python, Go, C# et plus, selon la configuration du projet Pulumi de l'utilisateur.
Prérequis
- Pulumi CLI installé.
- Azure CLI installé et authentifié (
az login). - Connaissance de base des modèles ARM, Bicep et des concepts Pulumi.
Utilisation
1. Conversion d'un modèle ARM ou Bicep
Pour convertir un fichier de modèle en code Pulumi :
pulumi convert --from arm --language typescript --out ./generated
Ou pour Bicep :
pulumi convert --from bicep --language python --out ./generated
2. Importation de ressources Azure existantes
Pour importer une ressource Azure dans un projet Pulumi existant :
pulumi import azurerm:storage/account:Account myStorageAccount /subscriptions/<sub>/resourceGroups/<rg>/providers/Microsoft.Storage/storageAccounts/<name>
3. Utilisation avec un modèle ARM
Utilisez la commande suivante pour générer un programme Pulumi à partir d'un fichier azuredeploy.json :
pulumi convert --from arm --language typescript --out ./pulumi-project
Ensuite, déployez avec :
cd ./pulumi-project
pulumi up
Dépannage
- Assurez-vous que l'ID de ressource Azure est correct pour l'importation.
- Si la conversion échoue, vérifiez que le fichier de modèle est valide (par exemple, au format ARM ou Bicep).
- Pour les problèmes d'authentification, exécutez
az loginavant d'utiliser la commande d'importation.