Bicep için dosya işlevleri
Bu makalede, dış dosyalardan içerik yüklemeye yönelik Bicep işlevleri açıklanmaktadır.
loadFileAsBase64
loadFileAsBase64(filePath)
Dosyayı base64 dizesi olarak yükler.
Ad alanı: sys.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Filepath | Yes | Dize | Yüklenecek dosyanın yolu. Yol, dağıtılan Bicep dosyasına göredir. Değişkenleri içeremez. |
Açıklamalar
Dağıtıma eklemek istediğiniz ikili içeriğiniz varsa bu işlevi kullanın. Dosyayı el ile base64 dizesine kodlamak ve Bicep dosyanıza eklemek yerine, dosyayı bu işlevle yükleyin. Bicep dosyası bir JSON şablonuna derlendiğinde dosya yüklenir. Şablona derleme sırasında çözümlenmedikleri için dosya yolunda değişkenleri kullanamazsınız. Dağıtım sırasında JSON şablonu dosyanın içeriğini sabit kodlanmış bir dize olarak içerir.
Bu işlev Için Bicep CLI sürüm 0.4.X veya üzeri gerekir.
Dosyanın izin verilen en büyük boyutu 96 Kb'tır.
Dönüş değeri
Base64 dizesi olarak dosya.
loadJsonContent
loadJsonContent(filePath, [jsonPath], [encoding])
Belirtilen JSON dosyasını Herhangi bir nesne olarak yükler.
Ad alanı: sys.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Filepath | Yes | Dize | Yüklenecek dosyanın yolu. Yol, dağıtılan Bicep dosyasına göredir. Değişkenleri içeremez. |
jsonPath | Hayır | Dize | Dosyanın yalnızca bir bölümünün yüklendiğini belirten JSONPath ifadesi. |
encoding | Hayır | Dize | Dosya kodlama. Varsayılan değer şudur: utf-8 . Kullanılabilir seçenekler şunlardır: iso-8859-1 , us-ascii , utf-16 , utf-16BE veya utf-8 . |
Açıklamalar
Ayrı bir dosyada depolanan JSON içeriğiniz veya küçültüldü JSON içeriğiniz varsa bu işlevi kullanın. Bicep dosyanızdaki JSON içeriğini yinelemek yerine içeriği bu işlevle yükleyin. Bir JSON yolu belirterek JSON dosyasının bir bölümünü yükleyebilirsiniz. Bicep dosyası JSON şablonuna derlendiğinde dosya yüklenir. Şablona derleme sırasında çözümlenmedikleri için dosya yoluna değişken ekleyemezsiniz. Dağıtım sırasında JSON şablonu dosyanın içeriğini sabit kodlanmış bir dize olarak içerir.
VS Code'da, yüklenen nesnenin özellikleri intellisense kullanılabilir. Örneğin, birçok Bicep dosyasında paylaşmak üzere değerleri olan bir dosya oluşturabilirsiniz. Bu makalede bir örnek gösterilmiştir.
Bu işlev Için Bicep CLI sürüm 0.7.X veya üzeri gerekir.
Dosyanın izin verilen en büyük boyutu, satır sonları dahil olmak üzere 1.048.576 karakterdir.
Dönüş değeri
Dosyanın herhangi bir nesne olarak içeriği.
Örnekler
Aşağıdaki örnek, bir ağ güvenlik grubu için değerler içeren bir JSON dosyası oluşturur.
{
"description": "Allows SSH traffic",
"protocol": "Tcp",
"sourcePortRange": "*",
"destinationPortRange": "22",
"sourceAddressPrefix": "*",
"destinationAddressPrefix": "*",
"access": "Allow",
"priority": 100,
"direction": "Inbound"
}
Bu dosyayı yükler ve bir JSON nesnesine dönüştürürsiniz. Kaynağa değer atamak için nesnesini kullanırsınız.
param location string = resourceGroup().location
var nsgconfig = loadJsonContent('nsg-security-rules.json')
resource newNSG 'Microsoft.Network/networkSecurityGroups@2023-11-01' = {
name: 'example-nsg'
location: location
properties: {
securityRules: [
{
name: 'SSH'
properties: nsgconfig
}
]
}
}
Bir ağ güvenlik grubu dağıtan diğer Bicep dosyalarındaki değer dosyasını yeniden kullanabilirsiniz.
loadYamlContent
loadYamlContent(filePath, [pathFilter], [encoding])
Belirtilen YAML dosyasını Herhangi bir nesne olarak yükler.
Ad alanı: sys.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Filepath | Yes | Dize | Yüklenecek dosyanın yolu. Yol, dağıtılan Bicep dosyasına göredir. Değişkenleri içeremez. |
pathFilter | Hayır | Dize | Yol filtresi, dosyanın yalnızca bir bölümünün yüklendiğini belirten bir JSONPath ifadesidir. |
encoding | Hayır | Dize | Dosya kodlama. Varsayılan değer şudur: utf-8 . Kullanılabilir seçenekler şunlardır: iso-8859-1 , us-ascii , utf-16 , utf-16BE veya utf-8 . |
Açıklamalar
Ayrı bir dosyada depolanan YAML içeriğiniz veya küçültülmiş YAML içeriğiniz varsa bu işlevi kullanın. Bicep dosyanızdaki YAML içeriğini yinelemek yerine içeriği bu işlevle yükleyin. Yol filtresi belirterek YAML dosyasının bir bölümünü yükleyebilirsiniz. Bicep dosyası YAML şablonuna derlendiğinde dosya yüklenir. Şablona derleme sırasında çözümlenmedikleri için dosya yoluna değişken ekleyemezsiniz. Dağıtım sırasında YAML şablonu dosyanın içeriğini sabit kodlanmış bir dize olarak içerir.
VS Code'da, yüklenen nesnenin özellikleri intellisense kullanılabilir. Örneğin, birçok Bicep dosyasında paylaşmak üzere değerleri olan bir dosya oluşturabilirsiniz. Bu makalede bir örnek gösterilmiştir.
Bu işlev, Bicep CLI sürüm 0.16.X veya üzerini gerektirir.
Dosyanın izin verilen en büyük boyutu, satır sonları dahil olmak üzere 1.048.576 karakterdir.
Dönüş değeri
Dosyanın herhangi bir nesne olarak içeriği.
Örnekler
Aşağıdaki örnek, bir ağ güvenlik grubu için değerler içeren bir YAML dosyası oluşturur.
description: "Allows SSH traffic"
protocol: "Tcp"
sourcePortRange: "*"
destinationPortRange: "22"
sourceAddressPrefix: "*"
destinationAddressPrefix: "*"
access: "Allow"
priority: 100
direction: "Inbound"
Bu dosyayı yükler ve bir JSON nesnesine dönüştürürsiniz. Kaynağa değer atamak için nesnesini kullanırsınız.
param location string = resourceGroup().location
var nsgconfig = loadYamlContent('nsg-security-rules.yaml')
resource newNSG 'Microsoft.Network/networkSecurityGroups@2023-11-01' = {
name: 'example-nsg'
location: location
properties: {
securityRules: [
{
name: 'SSH'
properties: nsgconfig
}
]
}
}
Bir ağ güvenlik grubu dağıtan diğer Bicep dosyalarındaki değer dosyasını yeniden kullanabilirsiniz.
loadTextContent
loadTextContent(filePath, [encoding])
Belirtilen dosyanın içeriğini dize olarak yükler.
Ad alanı: sys.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Filepath | Yes | Dize | Yüklenecek dosyanın yolu. Yol, dağıtılan Bicep dosyasına göredir. Değişken içeremez. |
encoding | Hayır | Dize | Dosya kodlama. Varsayılan değer şudur: utf-8 . Kullanılabilir seçenekler şunlardır: iso-8859-1 , us-ascii , utf-16 , utf-16BE veya utf-8 . |
Açıklamalar
Ayrı bir dosyada depolanan içeriğiniz varsa bu işlevi kullanın. İçeriği Bicep dosyanıza çoğaltmak yerine yükleyebilirsiniz. Örneğin, bir dosyadan dağıtım betiği yükleyebilirsiniz. Bicep dosyası JSON şablonuna derlendiğinde dosya yüklenir. Şablona derlenirken çözümlenmedikleri için dosya yoluna herhangi bir değişken ekleyemezsiniz. Dağıtım sırasında JSON şablonu dosyanın içeriğini sabit kodlanmış bir dize olarak içerir.
loadJsonContent()
JSON dosyalarını yüklemek için işlevini kullanın.
Bu işlev Için Bicep CLI sürüm 0.4.X veya üzeri gerekir.
Dosyanın izin verilen en büyük boyutu, satır sonları da dahil olmak üzere 131.072 karakterdir.
Dönüş değeri
Dize olarak dosyanın içeriği.
Örnekler
Aşağıdaki örnek bir dosyadan betik yükler ve bunu bir dağıtım betiği için kullanır.
resource exampleScript 'Microsoft.Resources/deploymentScripts@2023-08-01' = {
name: 'exampleScript'
location: resourceGroup().location
kind: 'AzurePowerShell'
identity: {
type: 'UserAssigned'
userAssignedIdentities: {
'/subscriptions/{sub-id}/resourcegroups/{rg-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{id-name}': {}
}
}
properties: {
azPowerShellVersion: '8.3'
scriptContent: loadTextContent('myscript.ps1')
retentionInterval: 'P1D'
}
}
Sonraki adımlar
- Bicep dosyasındaki bölümlerin açıklaması için bkz . Bicep dosyalarının yapısını ve söz dizimini anlama.