Persistente Azure CLI-parameter

De Azure CLI-referentie az config param-persist biedt de mogelijkheid om lokale persistente parameterwaarden te behouden voor Azure CLI-opdrachten. Hierdoor hoeven algemene parameters niet voortdurend opnieuw te worden getypt. Locatie en resourcegroep zijn bijvoorbeeld vereiste parameters in veel CLI-opdrachten, maar ze dragen niet bij aan de intentie van de opdracht. Wanneer u parameterwaarden met een persistente parameter opgeslagen, vermindert u redundantie en kunt u de CLI-opdrachtsyntaxis aanzienlijk verkorten.

Configuratiewaarden die worden gebruikt door de CLI worden geëvalueerd in de volgende volgorde, waarbij items die hoger in de lijst staan een hogere prioriteit hebben.

  1. Opdrachtregelparameters
  2. Waarden in de lokale adreslijst die is ingesteld door az config param-persist
  3. Omgevingsvariabelen
  4. Waarden in het configuratiebestand of die zijn ingesteld met az config

Installeer de Azure CLI of open Azure Cloud Shell om de scripts in dit artikel uit te voeren. Als u een lokale installatie van de Azure CLI gebruikt, is versie 2.12.0 of hoger nodig om opdrachten uit te az config param-persist voeren. Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie. Azure Cloud Shell heeft altijd de nieuwste versie van de Azure CLI.

Persistent parametergegevensbestand

Persistente parameterwaarden worden opgeslagen in een bestand met de .param_persist naam dat is opgeslagen in uw werkmap. Als u een Azure Cloud Shell Om Azure CLI-opdrachten uit te voeren, is uw werkmap in het opslagaccount dat wordt gebruikt door de Azure CLI. Als u een lokale installatie van de Azure CLI gebruikt, is uw werkmap op uw lokale computer. Op beide locaties is .param_persist het bestand verborgen en mag het niet handmatig worden bijgewerkt.

Persistente parameteropslag en ondersteuning

De volgende Azure CLI-parameters worden ondersteund door de persistente parameter . De parameters en worden anders opgeslagen in dat u ze kunt toevoegen aan de resource_group_name location persistente parameter zonder een create-opdracht uit te voeren.

Persistente parameter Storage actie Ondersteund door
location Een willekeurige opdracht uitvoeren Alle Azure CLI-verwijzingen
resource_group_name Een willekeurige opdracht uitvoeren Alle Azure CLI-verwijzingen
vnet_name Een create-opdracht uitvoeren Alleen Azure Web Apps
storage_account_name Een create-opdracht uitvoeren Alleen Azure Web Apps
webapp_name Een create-opdracht uitvoeren Alleen Azure Web Apps
function_app_name Een create-opdracht uitvoeren Azure Functions alleen

Voorbeeldscript met persistente parameters

Zonder persistente parameters moeten sequentiële CLI-opdrachten dezelfde parameterwaarden herhalen. Als persistente parameters zijn ingeschakeld, kunnen uw opgeslagen parameterwaarden worden weggelaten uit sequentiële opdrachten. In dit voorbeeld worden location de of herhaald in volgende resource group name storage account name opdrachten.

# Reminder: function app and storage account names must be unique.

# turn persisted parameters on
az config param-persist on

# Create a resource group which will store "resource group" and "location" in persisted parameter.
az group create --name RGlocalContext --location westeurope

# Create an Azure storage account omitting location and resource group.
az storage account create \
  --name sa1localcontext \
  --sku Standard_LRS

# Create a serverless function app in the resource group omitting storage account and resource group.
az functionapp create \
  --name FAlocalContext \
  --consumption-plan-location westeurope \
  --functions-version 2

# See the stored parameter values
az config param-persist show

Vergelijking van persistente parameters en globale variabelen

Er zijn twee Azure CLI-opdrachten die kunnen worden gebruikt voor standaardparameterwaarden: az config set defaults en az config param-persist . Gebruik de az config set defaults.<option>=<value> opdracht om globale variabelen op te geven, zoals groep, locatie of web. Gebruik az param-persist om lokale standaardwaarden op te geven die uniek zijn voor uw workload. Opgeslagen waarden worden door de CLI gebruikt in plaats van de vereiste argumenten.

Belangrijk

Persistente parameters overschrijven globale contextwaarden.

Referentie Bereik Instellen Gebruik
az config set defaults.<option>=<value> Globaal bereik in de CLI Expliciet instellen met behulp van az config set defaults.<option>=<value> Gebruiken voor instellingen zoals logboekregistratie, gegevensverzameling en standaardwaarden voor argumenten
az config param-persist Lokaal bereik voor een specifieke adreslijst Automatisch instellen zodra persistente parameters zijn ingeschakeld Gebruiken voor afzonderlijke workloadsequentiële opdrachten.

Opdrachtvoorbeelden

Gebruik az config param-persist om een globale variabele in te stellen die wordt gebruikt bij het maken van een Azure-opslagaccount.

# set the global variable for resource group
az config set defaults.group=myGlobalVariableRG

# Create an Azure storage account omitting the resource group relying on the global variable value
# Substitute the storage account name parameter with a unique value
az storage account create \
  --name mystorageaccount1 \
  --location westeurope \
  --sku Standard_LRS

De uitvoer van de CLI-opdracht laat zien dat er een nieuw opslagaccount is gemaakt in de resourcegroep in de globale variabele 'myGlobalVariableRG'.

...
},
  "primaryLocation": "westeurope",
  "privateEndpointConnections": [],
  "provisioningState": "Succeeded",
  "resourceGroup": "myGlobalVariableRG",
  "routingPreference": null,
  "secondaryEndpoints": null,
  "secondaryLocation": null,
  "sku": {
    "name": "Standard_LRS",
    "tier": "Standard"
},
...

Gebruik az config param-persist om persistente parameters in te stellen die worden gebruikt bij het maken van een Azure-opslagaccount. Als een globale variabele is ingesteld voor hetzelfde object, overschrijven de persistente parameter de globale variabele.

# turn persisted parameter on
az config param-persist on

# Create a resource group in order to write to persisted parameter
az group create --name myParamPersistRG --location westeurope

# Create an Azure storage account omitting the resource group relying on the persisted parameter value
# Substitute the storage account name parameter with a unique value
az storage account create \
  --name mystorageaccount2 \
  --location westeurope \
  --sku Standard_LRS

Zelfs met een globale variabele die is ingesteld voor de resourcegroep met de waarde , met persistente parameters ingeschakeld, is het nieuwe myGlobalVariableRG opslagaccount gemaakt met myParamPersistRG .

...
},
  "primaryLocation": "westeurope",
  "privateEndpointConnections": [],
  "provisioningState": "Succeeded",
  "resourceGroup": "myParamPersistRG",
  "routingPreference": null,
  "secondaryEndpoints": null,
  "secondaryLocation": null,
  "sku": {
    "name": "Standard_LRS",
    "tier": "Standard"
},
...

Zie ook