pulumi-arm-to-pulumi
pulumi/agent-skills
Konvertieren oder migrieren Sie Azure-ARM-Vorlagen (Azure Resource Manager), Bicep-Vorlagen oder Code nach Pulumi, einschließlich des Imports bestehender Azure-Ressourcen. Diese Funktion MUSS geladen werden, sobald ein Benutzer die Migration, Konvertierung oder den Import von ARM-Vorlagen, Bicep-Vorlagen, ARM-Code, Bicep-Code oder Azure-Ressourcen nach Pulumi anfordert.
...Alle erweiternÜber pulumi-arm-to-pulumi
Ein strukturierter Workflow zur Konvertierung oder Migration von Azure-ARM-Vorlagen (Azure Resource Manager), Bicep oder Azure-Code nach Pulumi, einschließlich des Imports bestehender Azure-Ressourcen in die Pulumi-Verwaltung. Er ist dafür vorgesehen, immer dann geladen zu werden, wenn eine solche Migration, Konvertierung oder ein solcher Import angefordert wird, und er überarbeitet jeden Migrationsplan, der bereits vor dem Laden der Funktion entworfen wurde, um ihn an die Anforderungen der Funktion anzupassen.
Die Erfolgskriterien sind streng: Jede ARM-Ressource muss entweder im Pulumi-Programm enthalten sein oder im Bericht ausdrücklich begründet werden; die Ausgabe muss strukturell gültig sein und eine erfolgreiche Pulumi-Vorschau ermöglichen; und beim Importieren bestehender Ressourcen darf die Vorschau keine Unterschiede anzeigen (keine Erstellungen, Aktualisierungen, Ersetzungen oder Löschungen), wobei etwaige Unterschiede über einen „Preview Resolution Workflow“ behoben werden müssen. Es wird stets ein formeller Migrationsbericht erstellt, der für einen Pull-Request geeignet ist und die Zuordnung der Ressourcen von ARM zu Pulumi, Entscheidungen bezüglich der Anbieter, Verhaltensunterschiede sowie manuelle Schritte abdeckt.
Der Workflow verläuft der Reihe nach. Bei der Informationserfassung werden die Azure-Anmeldedaten überprüft (unter Verwendung einer ESC-Umgebung und des Befehls „az login“) und die ARM-Vorlage mit „jq“ analysiert, um Ressourcentypen, Parameter, Variablen, „dependsOn“-Arrays, Kopier-Schleifen und Bedingungen zu extrahieren; optional wird mit den Befehlen „az resource list“ und „show“ ein Ressourceninventar erstellt. Die Code-Konvertierung erfolgt manuell, da es keinen automatisierten ARM-Konverter gibt; dabei wird standardmäßig der Azure-native Provider verwendet, mit dem klassischen Azure-Provider als Fallback, wobei alle Bedingungen, Schleifen und Abhängigkeiten in der vom Benutzer gewählten Sprache beibehalten werden. Der optionale Ressourcenimport nutzt die Option „inline import resource“ mit Azure-Ressourcen-IDs, die einem vorhersehbaren Pfad für Abonnement, Ressourcengruppe und Anbieter folgen, und überprüft anschließend, ob keine Unterschiede bestehen. Schließlich wird die Stack-Konfiguration so angepasst, dass sie mit den ARM-Parametern übereinstimmt. Die zugehörigen Referenzdateien „arm-conversion-patterns.md“ und „arm-import.md“ enthalten detaillierte Zuordnungsmuster sowie Verfahren für den Import und die Fehlerbehebung bei „Zero-Diff“.
FAQ
Gibt es ein automatisiertes Tool zur Konvertierung von ARM-Vorlagen?
Nein. Die Konvertierung von ARM nach Pulumi erfordert eine manuelle Umsetzung, und Sie sind für die gesamte Konvertierung verantwortlich, auch wenn Referenzmuster als Orientierungshilfe für die Zuordnung dienen.
Welchen Pulumi-Anbieter sollte ich verwenden?
Verwenden Sie standardmäßig @pulumi/azure-native für eine vollständige Abdeckung der Azure Resource Manager-API und greifen Sie auf den klassischen @pulumi/azure-Anbieter zurück, wenn bei azure-native eine Funktion fehlt oder eine einfachere Abstraktion erforderlich ist.
Was bedeutet die „Zero-Diff“-Importvalidierung?
Nach dem Import vorhandener Ressourcen darf die Pulumi-Vorschau keine Erstellungen, Aktualisierungen, Ersetzungen oder Löschungen anzeigen. Etwaige Abweichungen werden mit dem in „arm-import.md“ beschriebenen „Preview Resolution Workflow“ behoben.
Wie werden Azure-Anmeldeinformationen eingerichtet?
Über eine ESC-Umgebung, die Anmeldeinformationen bereitstellt, unter Verwendung von `pulumi env run` mit `az login` (Dienstprinzipal und föderiertes Token), gefolgt von einer Überprüfung mit `az account show`. Das Skill fragt nach der zu verwendenden ESC-Umgebung, falls keine angegeben wurde.
Was wird am Ende einer Migration bereitgestellt?
Ein formeller Migrationsbericht, der für einen Pull-Request geeignet ist und die Zuordnung der Ressourcen von ARM zu Pulumi, Anbieterentscheidungen, Verhaltensunterschiede, etwaige fehlende oder manuelle Schritte sowie Validierungsanweisungen enthält.
Alle Dateien
5Dateienagents/openai.yaml0,2KBAnzeigenarm-conversion-patterns.md12,4KBAnzeigenarm-import.md13,4KBAnzeigenuse_cases.yaml0,7KBAnzeigenSKILL.md10,1 KBAnzeigenAlle Dateien
0 Dateienpulumi-arm-to-pulumi installieren
Laden Sie die Skill-Dateien herunter und entpacken Sie sie in Ihr Verzeichnis „.claude/skills/“.
ZIP herunterladenKlonen Sie das Repository und kopieren Sie die Skill-Dateien in Ihr Projekt.
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
Kopieren





Heim
