Azure tarafından yönetilen uygulamanın oluşturma deneyimi için CreateUiDefinition.json
Bu belge, createUiDefinition.json dosyasının temel kavramlarını tanıtır. Azure portalı, yönetilen uygulama oluştururken kullanıcı arabirimini tanımlamak için bu dosyayı kullanır.
Şablon aşağıdaki gibidir
{
"$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": []
}
}
createUiDefinition.json dosyası her zaman üç özellik içerir:
- işleyici
- sürüm
- parametreler
İşleyici her zaman olmalıdır Microsoft.Azure.CreateUIDef
ve desteklenen en son sürüm olacaktır 0.1.2-preview
.
Parameters özelliğinin şeması, belirtilen işleyici ve sürümün birleşimine bağlıdır. Yönetilen uygulamalar için desteklenen özellikler , , basics
steps
ve outputs
şeklindedirconfig
. Yalnızca adımın varsayılan davranışını basics
geçersiz kılmanız gerektiğinde kullanırsınızconfig
. Temel bilgiler ve adım özellikleri, Azure portalında görüntülenecek metin kutuları ve açılan menüler gibi öğeleri içerir. outputs özelliği, belirtilen öğelerin çıkış değerlerini Azure Resource Manager şablonunun parametreleriyle eşlemek için kullanılır.
Dahil $schema
önerilir, ancak isteğe bağlıdır. Belirtilirse değerinin version
URI içindeki sürümle eşleşmesi $schema
gerekir.
JSON düzenleyicisini kullanarak createUiDefinition'ınızı oluşturabilir ve önizlemesini görüntülemek için createUiDefinition Korumalı Alanı'nda test edebilirsiniz. Korumalı alan hakkında daha fazla bilgi için bkz . Azure Yönetilen Uygulamalar için portal arabiriminizi test edin.
Config
config
özelliği isteğe bağlıdır. Temel adımların varsayılan davranışını geçersiz kılmak veya arabiriminizi adım adım sihirbaz olarak ayarlamak için kullanın. Kullanılırsaconfig
, createUiDefinition.json dosyasının bölümündeki ilk özelliktirparameters
. Aşağıdaki örnekte kullanılabilir özellikler gösterilmektedir.
"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
}
}
},
özelliği için isValid
true veya false olarak çözümleyen bir ifade yazın. özelliği için permission
kaynak sağlayıcısı eylemlerinden birini belirtin.
Sihirbaz
özelliği, isWizard
sonraki adıma geçmeden önce her adımın başarılı bir şekilde doğrulanması gerektirebilir. Özellik belirtilmediğinde isWizard
varsayılan değer false'tur ve adım adım doğrulama gerekmez.
Etkinleştirildiğinde isWizard
true olarak ayarlanır, Temel Bilgiler sekmesi kullanılabilir ve diğer tüm sekmeler devre dışı bırakılır. İleri düğmesi seçildiğinde, sekmenin simgesi bir sekmenin doğrulamasının başarılı mı yoksa başarısız mı olduğunu gösterir. Bir sekmenin gerekli alanları tamamlandıktan ve doğrulandıktan sonra, İleri düğmesi sonraki sekmeye gezinmeye izin verir. Tüm sekmeler doğrulamayı geçtiğinde Gözden Geçir ve Oluştur sayfasına gidip Oluştur düğmesini seçerek dağıtımı başlatabilirsiniz.
Temel bilgileri geçersiz kılma
Temel yapılandırma, temel bilgiler adımını özelleştirmenize olanak tanır.
için description
, kaynağınızı tanımlayan markdown özellikli bir dize sağlayın. Çok satırlı biçim ve bağlantılar desteklenir.
subscription
ve resourceGroup
öğeleri daha fazla doğrulama belirtmenizi sağlar. Doğrulamaları belirtme söz dizimi, metin kutusu için özel doğrulama ile aynıdır. Ayrıca abonelikte veya kaynak grubunda doğrulamalar belirtebilirsiniz permission
.
Abonelik denetimi, kaynak sağlayıcısı ad alanlarının listesini kabul eder. Örneğin, belirtebilirsiniz Microsoft.Compute
. Kullanıcı kaynak sağlayıcısını desteklemeyen bir abonelik seçtiğinde bir hata iletisi gösterir. Hata, kaynak sağlayıcısı bu abonelikte kayıtlı olmadığında ve kullanıcının kaynak sağlayıcısını kaydetme izni olmadığında oluşur.
Kaynak grubu denetiminin için allowExisting
bir seçeneği vardır. olduğunda true
, kullanıcılar zaten kaynakları olan kaynak gruplarını seçebilir. Bu bayrak, varsayılan davranışın kullanıcıların yeni veya boş bir kaynak grubu seçmesini zorunlu kılındığı çözüm şablonları için en uygun seçenektir. Diğer senaryoların çoğunda bu özelliğin belirtilmesi gerekli değildir.
için location
, geçersiz kılmak istediğiniz konum denetiminin özelliklerini belirtin. Geçersiz kılınmayan tüm özellikler varsayılan değerlerine ayarlanır. resourceTypes
tam kaynak türü adlarını içeren bir dize dizisi kabul eder. Konum seçenekleri yalnızca kaynak türlerini destekleyen bölgeler ile sınırlıdır. allowedValues
bir bölge dizeleri dizisi kabul eder. Açılan listede yalnızca bu bölgeler görüntülenir. hem resourceTypes
hem de allowedValues
ayarlayabilirsiniz. Sonuç, her iki listelerin kesişimidir. Son olarak özelliği, visible
konum açılan listesini koşullu olarak veya tamamen devre dışı bırakmak için kullanılabilir.
Temel bilgiler
Temel bilgiler adımı, Azure portalı dosyayı ayrıştırdığında oluşturulan ilk adımdır. Varsayılan olarak, temel adımlar kullanıcıların dağıtım için aboneliği, kaynak grubunu ve konumu seçmesine olanak tanır.
Bu bölümde daha fazla öğe ekleyebilirsiniz. Mümkün olduğunda, kümenin adı veya yönetici kimlik bilgileri gibi dağıtım genelindeki parametreleri sorgulayan öğeler ekleyin.
Aşağıdaki örnekte, varsayılan öğelere eklenmiş bir metin kutusu gösterilmektedir.
"basics": [
{
"name": "textBox1",
"type": "Microsoft.Common.TextBox",
"label": "Textbox on basics",
"defaultValue": "my text value",
"toolTip": "",
"visible": true
}
]
Adımlar
steps özelliği temel bilgiler sonrasında görüntülenecek sıfır veya daha fazla adım içerir. Her adım bir veya daha fazla öğe içerir. Dağıtılan uygulamanın rol veya katmanı başına adım eklemeyi göz önünde bulundurun. Örneğin, birincil düğüm girişleri için bir adım ve kümedeki çalışan düğümleri için bir adım ekleyin.
"steps": [
{
"name": "demoConfig",
"label": "Configuration settings",
"elements": [
ui-elements-needed-to-create-the-instance
]
}
]
Çıkışlar
Azure portalı, öğeleri Azure Resource Manager dağıtım şablonundan basics
ve steps
parametrelerine eşlemek için özelliğini kullanıroutputs
. Bu sözlüğün anahtarları şablon parametrelerinin adlarıdır ve değerler başvuruda bulunan öğelerden çıkış nesnelerinin özellikleridir.
Yönetilen uygulama kaynak adını ayarlamak için outputs özelliğine adlı applicationResourceName
bir değer eklemeniz gerekir. Bu değeri ayarlamazsanız, uygulama ad için bir GUID atar. Kullanıcı arabirimine, kullanıcıdan bir ad isteyen bir metin kutusu ekleyebilirsiniz.
"outputs": {
"vmName": "[steps('appSettings').vmName]",
"trialOrProduction": "[steps('appSettings').trialOrProd]",
"userName": "[steps('vmCredentials').adminUsername]",
"pwd": "[steps('vmCredentials').vmPwd.password]",
"applicationResourceName": "[steps('appSettings').vmName]"
}
Kaynak türleri
Kullanılabilir konumları yalnızca dağıtılacak kaynak türlerini destekleyen konumlara göre filtrelemek için kaynak türlerinin bir dizisini sağlayın. Birden fazla kaynak türü sağlarsanız, yalnızca tüm kaynak türlerini destekleyen konumlar döndürülür. Bu özellik isteğe bağlıdır.
{
"$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": [
...
İşlevler
CreateUiDefinition, öğelerin giriş ve çıkışlarıyla ve koşullular gibi özelliklerle çalışmaya yönelik işlevler sağlar. Bu işlevler hem söz diziminde hem de işlevsellikte Azure Resource Manager şablon işlevlerine benzer.
Sonraki adımlar
createUiDefinition.json dosyasının kendisi basit bir şemaya sahiptir. Bunun gerçek derinliği, desteklenen tüm öğelerden ve işlevlerden gelir. Bu öğeler şu adreste daha ayrıntılı olarak açıklanmıştır:
createUiDefinition için geçerli bir JSON şeması burada kullanılabilir: https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json
.
Örnek bir kullanıcı arabirimi dosyası için bkz . createUiDefinition.json.