Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Important
Azure Blueprints (Önizleme) 31 Ocak 2027'de emekliye ayrılacak ve aşamalı emeklilik 31 Temmuz 2026'dan başlayacak. Mevcut blueprint tanımlarınızı ve atamalarınızı Dağıtım Yığınlarına (önerilir ) ve Şablon Özelliklerine taşıyın. Blueprint artefaktları, dağıtım yığınlarını tanımlamak için kullanılan ARM JSON şablonlarına veya Bicep dosyalarına dönüştürülür. Tam aşamalı zaman çizelgesi, etki ve SSS için Azure Blueprints emekliliği veya https://aka.ms/AzureBlueprintsRetirement. Bir yapıtı ARM kaynağı olarak yazmayı öğrenmek için bkz:
Azure Blueprints, blueprint tanımını daha dinamik hale getiren fonksiyonlar sağlar. Bu fonksiyonlar, blueprint tanımları ve blueprint artefaktları için kullanılır. Azure Resource Manager Template (ARM template) artefaktı, Resource Manager fonksiyonlarının tam kullanımını destekler ve blueprint parametresi aracılığıyla dinamik bir değer elde eder.
Aşağıdaki işlevler desteklenir:
artifacts
artifacts(artifactName)
O blueprint artefaktlarının çıktılarıyla doldurulmuş bir özellik nesnesini döndürür.
Note
Fonksiyon artifacts() bir ARM Şablonu içinden kullanılamaz. Bu fonksiyon yalnızca blueprint tanımı JSON'da veya Azure PowerShell veya REST API ile Blueprints-as-code kapsamında blueprint yönetirken kullanılabilir.
Parametreler
| Parametre | Required | Türü | Description |
|---|---|---|---|
| artifactName | Yes | string | Bir taslak eserinin adı. |
Dönüş değeri
Çıkış özelliklerine sahip bir nesne. Çıktının özellikleri, referans verilen blueprint artefaktının türüne bağlıdır. Tüm tipler şu formatı takip eder:
{
"outputs": {collectionOfOutputProperties}
}
Politika ataması artefaktı
{
"outputs": {
"policyAssignmentId": "{resourceId-of-policy-assignment}",
"policyAssignmentName": "{name-of-policy-assignment}",
"policyDefinitionId": "{resourceId-of-policy-definition}",
}
}
ARM şablon artefaktı
Geri dönen nesnenin çıktı özellikleri ARM şablonu içinde tanımlanır ve dağıtım tarafından döndürülür.
Rol ataması artefaktı
{
"outputs": {
"roleAssignmentId": "{resourceId-of-role-assignment}",
"roleDefinitionId": "{resourceId-of-role-definition}",
"principalId": "{principalId-role-is-being-assigned-to}",
}
}
Example
Aşağıdaki örnek çıktı özelliğini içeren myTemplateArtifact adlı bir ARM şablon artefaktı:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
...
"outputs": {
"myArray": {
"type": "array",
"value": ["first", "second"]
},
"myString": {
"type": "string",
"value": "my string value"
},
"myObject": {
"type": "object",
"value": {
"myProperty": "my value",
"anotherProperty": true
}
}
}
}
myTemplateArtifact örneğinden veri alma örneklerinden bazıları şunlardır:
| Expression | Türü | Value |
|---|---|---|
[artifacts("myTemplateArtifact").outputs.myArray] |
Array | ["ilk", "ikinci"] |
[artifacts("myTemplateArtifact").outputs.myArray[0]] |
String | "ilk" |
[artifacts("myTemplateArtifact").outputs.myString] |
String | "String değerim" |
[artifacts("myTemplateArtifact").outputs.myObject] |
Nesne | { "myproperty": "değerim", "anotherProperty": doğru } |
[artifacts("myTemplateArtifact").outputs.myObject.myProperty] |
String | "değerim" |
[artifacts("myTemplateArtifact").outputs.myObject.anotherProperty] |
Boole | True |
concat
concat(string1, string2, string3, ...)
Birden fazla dize değerini birleştirir ve birleştirilmiş diziyi döndürür.
Parametreler
| Parametre | Required | Türü | Description |
|---|---|---|---|
| dize1 | Yes | string | Birleştirme için ilk değer. |
| ek bağımsız değişkenler | Hayır | string | Bağlama için sıralı sırayla ek değerler |
Dönüş değeri
Birleştirilmiş değerler dizisi.
Remarks
Azure Blueprints fonksiyonu, ARM şablon fonksiyonundan sadece dizilerle çalışması bakımından farklıdır.
Example
concat(parameters('organizationName'), '-vm')
parameters
parameters(parameterName)
Bir blueprint parametre değeri döndürür. Belirtilen parametre adı, blueprint tanımında veya blueprint artefaktlarında tanımlanmalıdır.
Parametreler
| Parametre | Required | Türü | Description |
|---|---|---|---|
| parametre adı | Yes | string | Döndürülecek parametrenin adı. |
Dönüş değeri
Belirtilen blueprint veya blueprint artefakt parametresinin değeri.
Remarks
Azure Blueprints fonksiyonu, ARM şablon fonksiyonundan yalnızca blueprint parametreleriyle çalışması bakımından farklıdır.
Example
Blueprint tanımında principalIds parametresini tanımlayın:
{
"type": "Microsoft.Blueprint/blueprints",
"properties": {
...
"parameters": {
"principalIds": {
"type": "array",
"metadata": {
"displayName": "Principal IDs",
"description": "This is a blueprint parameter that any artifact can reference. We'll display these descriptions for you in the info bubble. Supply principal IDs for the users,groups, or service principals for the Azure role assignment.",
"strongType": "PrincipalId"
}
}
},
...
}
}
Sonra bir blueprint artefaktında principalIds argümanı parameters() olarak kullanın:
{
"type": "Microsoft.Blueprint/blueprints/artifacts",
"kind": "roleAssignment",
...
"properties": {
"roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635",
"principalIds": "[parameters('principalIds')]",
...
}
}
resourceGroup
resourceGroup()
Mevcut kaynak grubunu temsil eden bir nesneyi döndürür.
Dönüş değeri
Geri dönen nesne aşağıdaki formattadır:
{
"name": "{resourceGroupName}",
"location": "{resourceGroupLocation}",
}
Remarks
Azure Blueprints fonksiyonu, ARM şablon fonksiyonundan farklıdır. Bu resourceGroup() fonksiyon, abonelik seviyesindeki bir artefaktta veya blueprint tanımında kullanılamaz. Yalnızca bir kaynak grubunun parçası olan blueprint eserlerinde kullanılabilir.
Fonksiyonun resourceGroup() yaygın bir kullanımı, kaynak grubu artefaktının bulunduğu aynı konumda kaynak oluşturmaktır.
Example
Kaynak grubunun konumunu, ya blueprint tanımında ya da atama sırasında başka bir eser için konum olarak kullanmak için, blueprint tanımınızda bir kaynak grubu yer tutucu nesnesi ilan edin. Bu örnekte, NetworkingPlaceholder kaynak grubu yer tutucusunun adıdır.
{
"type": "Microsoft.Blueprint/blueprints",
"properties": {
...
"resourceGroups": {
"NetworkingPlaceholder": {
"location": "eastus"
}
}
}
}
Daha sonra fonksiyonu resourceGroup() , bir kaynak grubu yer tutucu nesnesini hedefleyen bir blueprint artefaktı bağlamında kullanın. Bu örnekte, şablon artefaktı NetworkingPlaceholder kaynak grubuna dağıtılır ve şablona NetworkingPlaceholder kaynak grubu konumuyla dinamik olarak doldurulmuş resourceLocation parametresi sağlar.
NetworkingPlaceholder kaynak grubunun konumu, taslak tanımında statik olarak tanımlanabilir veya atama sırasında dinamik olarak tanımlanabilir. Her iki durumda da, şablon artefaktı bu bilgi bir parametre olarak sağlanır ve kaynakları doğru konuma dağıtmak için kullanır.
{
"type": "Microsoft.Blueprint/blueprints/artifacts",
"kind": "template",
"properties": {
"template": {
...
},
"resourceGroup": "NetworkingPlaceholder",
...
"parameters": {
"resourceLocation": {
"value": "[resourceGroup().location]"
}
}
}
}
resourceGroups
resourceGroups(placeholderName)
Belirtilen kaynak grubu artefaktını temsil eden bir nesneyi döndürür.
resourceGroup()Farklı olarak, bu fonksiyon artefaktın bağlamını gerektirirken, bu fonksiyon belirli bir kaynak grubunun yer tutucusunun özelliklerini elde etmek için kullanılır; bu fonksiyon o kaynak grubunun bağlamında olmadıklarında kullanılır.
Parametreler
| Parametre | Required | Türü | Description |
|---|---|---|---|
| Yer tutucuAdı | Yes | string | Kaynak grubunun geri dönecek eserinin yer tutucu adı. |
Dönüş değeri
Geri dönen nesne aşağıdaki formattadır:
{
"name": "{resourceGroupName}",
"location": "{resourceGroupLocation}",
}
Example
Kaynak grubunun konumunu, ya blueprint tanımında ya da atama sırasında başka bir eser için konum olarak kullanmak için, blueprint tanımınızda bir kaynak grubu yer tutucu nesnesi ilan edin. Bu örnekte, NetworkingPlaceholder kaynak grubu yer tutucusunun adıdır.
{
"type": "Microsoft.Blueprint/blueprints",
"properties": {
...
"resourceGroups": {
"NetworkingPlaceholder": {
"location": "eastus"
}
}
}
}
Sonra, herhangi bir blueprint artefaktının bağlamından bu resourceGroups() fonksiyonu kullanarak kaynak grubu yer tutucu nesnesine bir referans alın. Bu örnekte, şablon artefaktı NetworkingPlaceholder kaynak grubunun dışına yerleştirilir ve şablona NetworkingPlaceholder kaynak grubu konumuyla dinamik olarak doldurulmuş parametre artefakt sağlar.
NetworkingPlaceholder kaynak grubunun konumu, taslak tanımında statik olarak tanımlanabilir veya atama sırasında dinamik olarak tanımlanabilir. Her iki durumda da, şablon artefaktı bu bilgi bir parametre olarak sağlanır ve kaynakları doğru konuma dağıtmak için kullanır.
{
"kind": "template",
"properties": {
"template": {
...
},
...
"parameters": {
"artifactLocation": {
"value": "[resourceGroups('NetworkingPlaceholder').location]"
}
}
},
"type": "Microsoft.Blueprint/blueprints/artifacts",
"name": "myTemplate"
}
subscription
subscription()
Mevcut taslak görevi için abonelik detaylarını geri döndürür.
Dönüş değeri
Geri dönen nesne aşağıdaki formattadır:
{
"id": "/subscriptions/{subscriptionId}",
"subscriptionId": "{subscriptionId}",
"tenantId": "{tenantId}",
"displayName": "{name-of-subscription}"
}
Example
Aboneliğin görüntü adını ve concat() şablon artefaktına parametre olarak iletilen bir adlandırma düzenlemesi oluşturma fonksiyonunu kullanın.
{
"kind": "template",
"properties": {
"template": {
...
},
...
"parameters": {
"resourceName": {
"value": "[concat(subscription().displayName, '-vm')]"
}
}
},
"type": "Microsoft.Blueprint/blueprints/artifacts",
"name": "myTemplate"
}
Sonraki Adımlar
- Şema yaşam döngüsü hakkında bilgi edinin.
- Statik ve dinamik parametrelerin nasıl kullanılacağını anlama.
- Şema sıralama düzenini özelleştirmeyi öğrenin.
- Taslak kaynak kilitlemeyi nasıl kullanacağınızı öğrenin.
- Mevcut atamaları nasıl güncelleştireceğinizi öğrenin.
- Genel sorun giderme ile şema ataması sırasındaki sorunları çözün.