Soubor createUiDefinition.json pro prostředí pro vytváření spravovaných aplikací Azure
Tento dokument představuje základní koncepty souboru createUiDefinition.json . Azure Portal tento soubor používá k definování uživatelského rozhraní při vytváření spravované aplikace.
Šablona je následující:
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"config": {
"isWizard": false,
"basics": {}
},
"basics": [],
"steps": [],
"outputs": {},
"resourceTypes": []
}
}
Soubor createUiDefinition.json vždy obsahuje tři vlastnosti:
- obslužná rutina
- version
- parametry
Obslužná rutina by měla být Microsoft.Azure.CreateUIDef
vždy a nejnovější podporovaná verze je 0.1.2-preview
.
Schéma vlastnosti parametrů závisí na kombinaci zadané obslužné rutiny a verze. U spravovaných aplikací jsou config
podporované vlastnosti : , basics
steps
, a outputs
. Použijete config
pouze v případě, že potřebujete přepsat výchozí chování basics
kroku. Základní informace a vlastnosti kroků obsahují prvky , jako jsou textová pole a rozevírací seznamy, které se mají zobrazit na webu Azure Portal. Vlastnost outputs slouží k mapování výstupních hodnot zadaných prvků na parametry šablony Azure Resource Manageru.
Zahrnutí $schema
se doporučuje, ale volitelné. Pokud je tato hodnota version
zadaná, musí se shodovat s verzí v rámci identifikátoru $schema
URI.
Pomocí editoru JSON můžete vytvořit objekt createUiDefinition a pak ho otestovat v sandboxu createUiDefinition a zobrazit jeho náhled. Další informace o sandboxu najdete v tématu Testování rozhraní portálu pro spravované aplikace Azure.
Config
Vlastnost config
je nepovinná. Použijte ho k přepsání výchozího chování základního kroku nebo k nastavení rozhraní jako podrobného průvodce. Pokud config
se použije, je to první vlastnost v oddílu createUiDefinition.json souboru parameters
. Následující příklad ukazuje dostupné vlastnosti.
"config": {
"isWizard": false,
"basics": {
"description": "Customized description with **markdown**, see [more](https://www.microsoft.com).",
"subscription": {
"constraints": {
"validations": [
{
"isValid": "[not(contains(subscription().displayName, 'Test'))]",
"message": "Can't use test subscription."
},
{
"permission": "Microsoft.Compute/virtualmachines/write",
"message": "Must have write permission for the virtual machine."
},
{
"permission": "Microsoft.Compute/virtualMachines/extensions/write",
"message": "Must have write permission for the extension."
}
]
},
"resourceProviders": [
"Microsoft.Compute"
]
},
"resourceGroup": {
"constraints": {
"validations": [
{
"isValid": "[not(contains(resourceGroup().name, 'test'))]",
"message": "Resource group name can't contain 'test'."
}
]
},
"allowExisting": true
},
"location": {
"label": "Custom label for location",
"toolTip": "provide a useful tooltip",
"resourceTypes": [
"Microsoft.Compute/virtualMachines"
],
"allowedValues": [
"eastus",
"westus2"
],
"visible": true
}
}
},
isValid
Pro vlastnost napište výraz, který se přeloží na true nebo false. permission
Pro vlastnost zadejte jednu z akcí poskytovatele prostředků.
Průvodce
Tato isWizard
vlastnost umožňuje vyžadovat úspěšné ověření každého kroku před pokračováním k dalšímu kroku. isWizard
Pokud vlastnost není zadaná, výchozí hodnota je false a podrobné ověření není povinné.
Pokud isWizard
je tato možnost povolená, je karta Základy dostupná a všechny ostatní karty jsou zakázané. Když je vybráno tlačítko Další , ikona karty označuje, jestli ověření karty proběhlo nebo selhalo. Po dokončení a ověření požadovaných polí na kartě umožňuje tlačítko Další navigaci na další kartu. Když všechny karty projdou ověřením, můžete přejít na stránku Zkontrolovat a vytvořit a vybrat tlačítko Vytvořit a zahájit nasazení.
Přepsání základů
Základní konfigurace umožňuje přizpůsobit krok základy.
Zadejte description
řetězec s povoleným markdownem, který popisuje váš prostředek. Podporuje se víceřádkový formát a odkazy.
resourceGroup
Prvky subscription
umožňují zadat více ověření. Syntaxe pro zadání ověření je shodná s vlastním ověřením textového pole. Můžete také zadat permission
ověření pro předplatné nebo skupinu prostředků.
Ovládací prvek předplatného přijímá seznam oborů názvů poskytovatele prostředků. Můžete například zadat Microsoft.Compute
. Zobrazí se chybová zpráva, když uživatel vybere předplatné, které nepodporuje poskytovatele prostředků. K chybě dochází v případě, že poskytovatel prostředků není zaregistrovaný v daném předplatném a uživatel nemá oprávnění k registraci poskytovatele prostředků.
Ovládací prvek skupiny prostředků má možnost pro allowExisting
. Když true
uživatelé můžou vybrat skupiny prostředků, které už prostředky mají. Tento příznak je nejvhodnější pro šablony řešení, kde výchozí chování vyžaduje, aby uživatelé vybrali novou nebo prázdnou skupinu prostředků. Ve většině jiných scénářů není zadání této vlastnosti nutné.
Zadejte location
vlastnosti ovládacího prvku umístění, který chcete přepsat. Všechny vlastnosti, které nejsou přepsány, jsou nastaveny na výchozí hodnoty. resourceTypes
přijímá pole řetězců obsahujících plně kvalifikované názvy typů prostředků. Možnosti umístění jsou omezeny pouze na oblasti, které podporují typy prostředků. allowedValues
přijímá pole řetězců oblastí. V rozevíracím seznamu se zobrazí jenom ty oblasti. Můžete nastavit obojí allowedValues
i resourceTypes
. Výsledkem je průsečík obou seznamů. visible
Nakonec lze vlastnost použít k podmíněnému nebo úplnému zakázání rozevíracího seznamu umístění.
Základy
Krok Základy je prvním krokem vygenerovaným při analýze souboru na webu Azure Portal. Ve výchozím nastavení základní krok umožňuje uživatelům zvolit předplatné, skupinu prostředků a umístění pro nasazení.
V této části můžete přidat další prvky. Pokud je to možné, přidejte prvky, které dotazuje parametry pro nasazení, jako je název clusteru nebo přihlašovacích údajů správce.
Následující příklad ukazuje textové pole, které bylo přidáno do výchozích prvků.
"basics": [
{
"name": "textBox1",
"type": "Microsoft.Common.TextBox",
"label": "Textbox on basics",
"defaultValue": "my text value",
"toolTip": "",
"visible": true
}
]
Kroky
Vlastnost steps obsahuje nula nebo více kroků, které se mají zobrazit po základech. Každý krok obsahuje jeden nebo více prvků. Zvažte přidání kroků na roli nebo vrstvu nasazené aplikace. Můžete například přidat krok pro vstupy primárního uzlu a krok pro pracovní uzly v clusteru.
"steps": [
{
"name": "demoConfig",
"label": "Configuration settings",
"elements": [
ui-elements-needed-to-create-the-instance
]
}
]
Výstupy
Azure Portal pomocí outputs
vlastnosti mapuje prvky z basics
šablony nasazení Azure Resource Manageru a steps
na parametry. Klíče tohoto slovníku jsou názvy parametrů šablony a hodnoty jsou vlastnosti výstupních objektů z odkazovaných prvků.
Pokud chcete nastavit název prostředku spravované aplikace, musíte do vlastnosti outputs zahrnout hodnotu s názvem applicationResourceName
. Pokud tuto hodnotu nenastavíte, přiřadí aplikace pro název identifikátor GUID. Do uživatelského rozhraní můžete zahrnout textové pole, které požaduje jméno od uživatele.
"outputs": {
"vmName": "[steps('appSettings').vmName]",
"trialOrProduction": "[steps('appSettings').trialOrProd]",
"userName": "[steps('vmCredentials').adminUsername]",
"pwd": "[steps('vmCredentials').vmPwd.password]",
"applicationResourceName": "[steps('appSettings').vmName]"
}
Typy zdrojů
Pokud chcete filtrovat dostupná umístění jenom na umístění, která podporují typy prostředků, které se mají nasadit, zadejte pole typů prostředků. Pokud zadáte více než jeden typ prostředku, vrátí se pouze umístění, která podporují všechny typy prostředků. Tato vlastnost je nepovinná.
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"resourceTypes": [
"Microsoft.Compute/disks"
],
"basics": [
...
Funkce
CreateUiDefinition poskytuje funkce pro práci se vstupy a výstupy prvků a funkcemi, jako jsou podmíněné. Tyto funkce jsou podobné syntaxi i funkcím šablony Azure Resource Manageru.
Další kroky
Samotný soubor createUiDefinition.json má jednoduché schéma. Skutečná hloubka pochází ze všech podporovaných prvků a funkcí. Tyto položky jsou podrobněji popsány v těchto částech:
Aktuální schéma JSON pro createUiDefinition je k dispozici zde: https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json
.
Příklad souboru uživatelského rozhraní najdete v tématu createUiDefinition.json.