Importera och exportera skissdefinitioner med PowerShell
Viktigt
Den 11 juli 2026 kommer skisser (förhandsversion) att bli inaktuella. Migrera dina befintliga skissdefinitioner och tilldelningar till mallspecifikationer och distributionsstackar. Skissartefakter ska konverteras till ARM JSON-mallar eller Bicep-filer som används för att definiera distributionsstackar. Information om hur du skapar en artefakt som en ARM-resurs finns i:
Azure Blueprints kan hanteras fullständigt via Azure Portal. När organisationer fortsätter att använda Azure Blueprints bör de börja tänka på skissdefinitioner som hanterad kod. Det här begreppet kallas ofta infrastruktur som kod (IaC). Att behandla skissdefinitionerna som kod ger ytterligare fördelar utöver vad Azure Portal erbjuder. Här är några av de här fördelarna:
- Dela skissdefinitioner
- Säkerhetskopiera skissdefinitioner
- Återanvända skissdefinitioner i olika klienter eller prenumerationer
- Placera skissdefinitionerna i källkontrollen
- Automatiserad testning av skissdefinitioner i testmiljöer
- Stöd för pipelines för kontinuerlig integrering och kontinuerlig distribution (CI/CD)
Oavsett dina skäl har hantering av skissdefinitioner som kod fördelar. Den här artikeln visar hur du använder kommandona Import-AzBlueprintWithArtifact
och Export-AzBlueprintWithArtifact
i az.blueprint-modulen .
Förutsättningar
Den här artikeln förutsätter en måttlig arbetskunskap om Azure Blueprints. Om du inte har gjort det ännu kan du gå igenom följande artiklar:
- Skapa en skiss i portalen
- Läs mer om distributionsstegoch skissens livscykel
- Skapa och hantera skissdefinitioner och tilldelningar med PowerShell
Om den inte redan är installerad följer du anvisningarna i Lägg till Az.Blueprint-modulen för att installera och verifiera Az.Blueprint-modulen från PowerShell-galleriet.
Mappstruktur för en skissdefinition
Innan vi går igenom hur du exporterar och importerar skisser ska vi titta på hur filerna som utgör skissdefinitionen är strukturerade. En skissdefinition ska lagras i en egen mapp.
Viktigt
Om inget värde skickas till parametern Name för cmdleten Import-AzBlueprintWithArtifact
används namnet på mappen som skissdefinitionen lagras i.
Tillsammans med skissdefinitionen, som måste ha namnet blueprint.json
, är artefakterna som skissdefinitionen består av. Varje artefakt måste finnas i undermappen med namnet artifacts
.
Tillsammans bör strukturen för skissdefinitionen som JSON-filer i mappar se ut så här:
.
|
|- MyBlueprint/ _______________ # Root folder name becomes default name of blueprint definition
| |- blueprint.json __________ # The blueprint definition. Fixed name.
|
| |- artifacts/ ______________ # Subfolder for all blueprint artifacts. Fixed name.
| |- artifact.json ________ # Blueprint artifact as JSON file. Artifact named from file.
| |- ...
| |- more-artifacts.json
Exportera skissdefinitionen
Stegen för att exportera skissdefinitionen är enkla. Det kan vara praktiskt att exportera skissdefinitionen för att dela, säkerhetskopiera eller placera den i källkontrollen.
-
Skiss [krävs]
- Anger skissdefinitionen
- Använd
Get-AzBlueprint
för att hämta referensobjektet
-
OutputPath [krävs]
- Anger sökvägen för att spara skissdefinitionens JSON-filer till
- Utdatafilerna finns i en undermapp med namnet på skissdefinitionen
-
Version (valfritt)
- Anger vilken version som ska matas ut om skissreferensobjektet innehåller referenser till mer än en version.
Hämta en referens till skissdefinitionen som ska exporteras från prenumerationen som representeras av
{subId}
:# Login first with Connect-AzAccount if not using Cloud Shell # Get version '1.1' of the blueprint definition in the specified subscription $bpDefinition = Get-AzBlueprint -SubscriptionId '{subId}' -Name 'MyBlueprint' -Version '1.1'
Använd cmdleten
Export-AzBlueprintWithArtifact
för att exportera den angivna skissdefinitionen:Export-AzBlueprintWithArtifact -Blueprint $bpDefinition -OutputPath 'C:\Blueprints'
Importera skissdefinitionen
När du antingen har en exporterad skissdefinition eller har en manuellt skapad skissdefinition i den mappstruktur som krävs kan du importera skissdefinitionen till en annan hanteringsgrupp eller prenumeration.
Exempel på inbyggda skissdefinitioner finns i GitHub-lagringsplatsen för Azure Blueprints.
-
Namn [krävs]
- Anger namnet på den nya skissdefinitionen
-
InputPath [krävs]
- Anger sökvägen för att skapa skissdefinitionen från
- Måste matcha den mappstruktur som krävs
-
ManagementGroupId (valfritt)
- Hanteringsgrupps-ID:t som skissdefinitionen ska sparas i om inte den aktuella kontextens standard
- ManagementGroupId eller SubscriptionId måste anges
-
SubscriptionId (valfritt)
- Prenumerations-ID:t som skissdefinitionen ska sparas i om inte den aktuella kontextens standard
- ManagementGroupId eller SubscriptionId måste anges
Använd cmdleten
Import-AzBlueprintWithArtifact
för att importera den angivna skissdefinitionen:# Login first with Connect-AzAccount if not using Cloud Shell Import-AzBlueprintWithArtifact -Name 'MyBlueprint' -ManagementGroupId 'DevMG' -InputPath 'C:\Blueprints\MyBlueprint'
När skissdefinitionen har importerats tilldelar du den med PowerShell.
Information om hur du skapar avancerade skissdefinitioner finns i följande artiklar:
- Använd statiska och dynamiska parametrar.
- Anpassa sekvenseringsordningen för skissen.
- Skydda distributioner med låsning av skissresurser.
- Hantera skisser som kod.
Nästa steg
- Mer information om livscykeln för en skiss.
- Förstå hur du använder statiska och dynamiska parametrar.
- Lär dig hur du anpassar sekvensordningen för en skiss.
- Lär dig hur du använder resurslåsning för en skiss.
- Lös problem som kan uppstå vid tilldelningen av en skiss med allmän felsökning.