Dela via


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:

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.
  1. 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'
    
  2. 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]
  • 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
  1. 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:

Nästa steg