Aracılığıyla paylaş


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.logbulunan 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 executekullanı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.jsonbulunan 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/storagebulunan 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.bicepkapsayı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.