Azure Dağıtım Ortamı CLI değişkenleri başvurusu
Azure Dağıtım Ortamları (ADE), özel görüntüler yazarken başvurabileceğiniz ortamınızla ilgili birçok değişken ayarlar. Görüntülerinizi etkileşimde bulundukları ortama esnek hale getirmek için işlem betikleri (deploy.sh veya delete.sh) içinde aşağıdaki değişkenleri kullanabilirsiniz.
ADE tarafından kapsayıcı içinde kullanılan dosyalar için, tüm dosyalar ilk dizinin dışında bir ade
alt klasörde bulunur.
Kullanılabilir ortam değişkenlerinin listesi aşağıdadır:
ADE_ERROR_LOG
konumunda /ade/temp/error.log
bulunan dosyaya başvurur. Dosya, error.log
başarısız bir dağıtım veya silme sonucunda bir ortamın hata ayrıntılarını dolduran tüm standart hata çıkışlarını depolar. Dosyası ile birlikte ade execute
kullanılır. Bu dosya, standart çıktı ve standart hata içeriğini ADE tarafından yönetilen bir günlük dosyasına kaydeder. komutunu kullanırken ade execute
aşağıdaki komutu kullanarak standart hata günlüğünü bu dosya konumuna yönlendirin:
ade execute --operation $ADE_OPERATION_NAME --command "{YOUR_COMMAND}" 2> >(tee -a $ADE_ERROR_LOG)
Bu yöntemi kullanarak dağıtım veya silme hatasını geliştirici portalında görüntüleyebilirsiniz. Bu, özel görüntünüzü oluştururken daha hızlı ve daha başarılı hata ayıklama yinelemelerine ve başarısız işlemin kök nedeninin daha hızlı tanılanmasına yol açar.
ADE_OUTPUTS
konumunda /ade/temp/output.json
bulunan dosyaya başvurur. Dosya, output.json
bir ortamın dağıtımından elde edilen tüm çıkışları kalıcı depolamada depolar, böylece daha sonraki bir tarihte Azure CLI kullanılarak erişilebilir. Çıkışı özel bir görüntüde depolarken, aşağıdaki örnekte gösterildiği gibi çıkışın belirtilen dosyaya yüklendiğinden emin olun:
echo "$deploymentOutput" > $ADE_OUTPUTS
ADE_STORAGE
konumunda /ade/storage
bulunan dizine başvurur. Çekirdek görüntünün giriş noktası sırasında ADE, ortamın depolama kapsayıcısından özel olarak adlandırılmış storage.zip
bir dosyayı alır ve bu dizini doldurur ve işlemin tamamlanmasının ardından dizini zip dosyası olarak depolama kapsayıcısına geri yükler. Durum dosyaları gibi sonraki yeniden dağıtımlarda özel görüntünüzde başvurmak istediğiniz dosyalarınız varsa, bunları bu dizine yerleştirin.
ADE_CLIENT_ID
Ortamın proje ortamı türünün Yönetilen Hizmet Kimliği'nin (MSI) nesne kimliğini ifade eder. Bu değişken, altyapı dağıtımı gibi kapsayıcı içinde kullanılacak izinler için Azure CLI'ya doğrulamak için kullanılabilir.
ADE_TENANT_ID
Ortamın kiracı GUID'sine başvurur.
ADE_SUBSCRIPTION_ID
Ortamın abonelik GUID'sine başvurur.
ADE_TEMPLATE_FILE
Ortam tanımındaki 'templatePath' özelliğinde belirtilen ana şablon dosyasının kapsayıcı içinde nerede yaşadığını belirtir. Bu yol, kataloğu bağladığınız dosya yolu düzeyine bağlı olarak kataloğun kaynak denetimini kabaca yansıtır. Dosya kabaca konumunda /ade/repository/{CATALOG_NAME}/{PATH_TO_TEMPLATE_FILE}
bulunur. Bu yöntem öncelikle ana dağıtım adımı sırasında, dağıtımın temeli için başvurulmuş dosya olarak kullanılır.
Azure CLI'yi kullanan bir örnek aşağıda verilmişti:
az deployment group create --subscription $ADE_SUBSCRIPTION_ID \
--resource-group "$ADE_RESOURCE_GROUP_NAME" \
--name "$deploymentName" \
--no-prompt true --no-wait \
--template-file "$ADE_TEMPLATE_FILE" \
--parameters "$deploymentParameters" \
--only-show-errors
IaC dosyalarını veya özel görüntünüzde kullanmak istediğiniz dosyaları destekleme gibi diğer tüm dosyalar, katalog içinde oldukları için kapsayıcının içindeki şablon dosyasına göre konumlarında depolanır. Örneğin, aşağıdaki dizini alın:
├───SampleCatalog
├───EnvironmentDefinition1
│ file1.bicep
│ main.bicep
│ environment.yaml
│
└───TestFolder
test1.txt
test2.txt
Bu durumda, $ADE_TEMPLATE_FILE=/ade/repository/SampleCatalog/EnvironmentDefinition1/main.bicep
. Ayrıca, file1.bicep gibi dosyalar konumundaki /ade/repository/SampleCatalog/EnvironmentDefinition1/file1.bicep
kapsayıcının içinde ve test2.txt konumunda yer alır /ade/repository/SampleCatalog/EnvironmentDefinition1/TestFolder/test2.txt
.
ADE_ENVIRONMENT_NAME
Dağıtım zamanında verilen ortamın adı.
ADE_ENVIRONMENT_LOCATION
Ortamın dağıtıldığı konum. Bu konum projenin bölgesidir.
ADE_RESOURCE_GROUP_NAME
Kaynaklarınızı dağıtmak için ADE tarafından oluşturulan kaynak grubunun adı.
ADE_ENVIRONMENT_TYPE
Bu ortamı dağıtmak için kullanılan proje ortamı türünün adı.
ADE_OPERATION_PARAMETERS
Ortamı dağıtmak için sağlanan parametrelerin JSON nesnesi. Parameters nesnesine bir örnek aşağıda verilmiştir:
{
"location": "locationInput",
"name": "nameInput",
"sampleObject": {
"sampleProperty": "sampleValue"
},
"sampleArray": [
"sampleArrayValue1",
"sampleArrayValue2"
]
}
ADE_OPERATION_NAME
Ortamda gerçekleştirilen işlemin türü. Bugün bu değer 'deploy' veya 'delete' şeklindedir.
ADE_HTTP__OPERATIONID
Ortamda gerçekleştirilen işleme atanan İşlem Kimliği. İşlem Kimliği, ADE CLI'yi kullanmak için doğrulama olarak kullanılır ve geçmiş işlemlerden günlüklerin alınmasında ana tanımlayıcıdır.
ADE_HTTP__DEVCENTERID
Ortamın Geliştirme Merkezi kimliği. Geliştirme Merkezi kimliği, ADE CLI'yi kullanmak için doğrulama olarak da kullanılır.