pulumi-arm-to-pulumi
pulumi/agent-skills
Convertir ou migrer des modèles ARM (Azure Resource Manager) et 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.
...Développer toutÀ propos pulumi-arm-to-pulumi
Un workflow structuré permettant de convertir ou de migrer des modèles Azure ARM (Azure Resource Manager), du code Bicep ou du code Azure vers Pulumi, y compris l'importation de ressources Azure existantes dans l'environnement de gestion Pulumi. Il est destiné à être chargé chaque fois qu’une telle migration, conversion ou importation est demandée, et il révisera tout plan de migration déjà rédigé avant le chargement de la compétence afin de l’aligner sur ses exigences.
Les critères de réussite sont stricts : chaque ressource ARM doit soit apparaître dans le programme Pulumi, soit être explicitement justifiée dans le rapport ; le résultat doit être structurellement valide et permettre un aperçu Pulumi réussi ; et lors de l’importation de ressources existantes, l’aperçu ne doit afficher aucun écart (aucune création, mise à jour, remplacement ou suppression), les éventuelles différences étant résolues via un workflow de résolution de l’aperçu. Un rapport de migration formel, adapté à une pull request, est toujours généré. Il couvre le mappage des ressources ARM vers Pulumi, les choix de fournisseurs, les différences de comportement et les étapes manuelles.
Le workflow se déroule dans l’ordre. La collecte d’informations vérifie les identifiants Azure (à l’aide d’un environnement ESC et de la commande `az login`) et analyse le modèle ARM avec `jq` pour extraire les types de ressources, les paramètres, les variables, les tableaux `dependsOn`, les boucles de copie et les conditions, en créant éventuellement un inventaire des ressources à l’aide des commandes `az resource list` et `show`. La conversion du code est manuelle, car il n’existe pas de convertisseur ARM automatisé ; le fournisseur azure-native est utilisé par défaut, avec le fournisseur Azure classique comme solution de secours, en conservant toutes les conditions, boucles et dépendances dans le langage choisi par l’utilisateur. L'importation facultative des ressources utilise l’option d’importation de ressources en ligne avec des identifiants de ressources Azure suivant un chemin prévisible (abonnement, groupe de ressources et fournisseur), puis vérifie qu’il n’y a aucune différence. Enfin, la configuration de la pile est ajustée pour correspondre aux paramètres ARM. Les fichiers de référence associés `arm-conversion-patterns.md` et `arm-import.md` fournissent les modèles de mappage détaillés ainsi que les procédures d’importation et de débogage « zéro différence ».
FAQ
Existe-t-il un outil automatisé pour convertir les modèles ARM ?
Non. La conversion ARM vers Pulumi nécessite une traduction manuelle et vous êtes responsable de l’intégralité de la conversion, bien que des modèles de référence guident le mappage.
Quel fournisseur Pulumi dois-je utiliser ?
Utilisez par défaut @pulumi/azure-native pour une couverture complète de l’API Azure Resource Manager, et rabattez-vous sur le fournisseur classique @pulumi/azure lorsque azure-native ne dispose pas d’une fonctionnalité ou qu’une abstraction plus simple est nécessaire.
Que signifie la validation d’importation « zéro différence » ?
Après l’importation de ressources existantes, l’aperçu Pulumi ne doit afficher aucune création, mise à jour, remplacement ou suppression. Les éventuelles différences sont résolues à l’aide du workflow de résolution de l’aperçu décrit dans le fichier arm-import.md.
Comment configurer les identifiants Azure ?
Via un environnement ESC fournissant les identifiants, à l’aide de la commande `pulumi env run` avec `az login` (entité de service et jeton fédéré), puis en vérifiant avec `az account show`. Si aucun environnement n’est spécifié, la compétence demande quel environnement ESC utiliser.
Quel est le résultat final d’une migration ?
Un rapport de migration formel adapté à une pull request, comprenant le mappage des ressources ARM vers Pulumi, les choix de fournisseurs, les différences de comportement, les étapes manquantes ou manuelles, ainsi que les instructions de validation.
Tous les fichiers
5fichiersagents/openai.yaml0,2KoAfficherarm-conversion-patterns.md12,4KoAfficherarm-import.md13,4KoAfficheruse_cases.yaml0,7KoAfficherSKILL.md10,1 KoAfficherTous les fichiers
0 fichiersInstaller pulumi-arm-to-pulumi
Téléchargez et décompressez les fichiers de compétences dans votre répertoire .claude/skills/.
Télécharger le ZIPClonez le dépôt et copiez les fichiers de compétence dans votre projet.
git clone https://github.com/pulumi/agent-skills/blob/main/migration/skills/pulumi-arm-to-pulumi/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
Copier





Maison
