Azure 部署環境 CLI 變數參考
Azure 部署環境 (ADE) 會設定許多與您環境相關的變數,您可以在撰寫自定義映射時參考。 您可以在作業腳本(deploy.sh 或 delete.sh)中使用下列變數,讓您的映像能夠彈性地與它們互動的環境。
對於容器內 ADE 所使用的檔案,所有檔案都存在於 ade
初始目錄外的子資料夾中。
以下是可用的環境變數清單:
ADE_ERROR_LOG
參考位於 /ade/temp/error.log
的檔案。 檔案 error.log
會儲存任何標準錯誤輸出,以在部署或刪除失敗的結果中填入環境的錯誤詳細數據。 檔案會與 搭配 ade execute
使用,它會將任何標準輸出和標準錯誤內容記錄到 ADE 管理的記錄檔。 使用 ade execute
命令時,請使用下列命令,將標準錯誤記錄重新導向至此檔案位置:
ade execute --operation $ADE_OPERATION_NAME --command "{YOUR_COMMAND}" 2> >(tee -a $ADE_ERROR_LOG)
使用此方法,您可以在開發人員入口網站中檢視部署或刪除錯誤。 這會導致在建立自定義映射時更快速且更成功的偵錯反覆專案,並更快速地診斷失敗作業的根本原因。
ADE_OUTPUTS
參考位於 /ade/temp/output.json
的檔案。 檔案 output.json
會將環境部署的任何輸出儲存在永續性記憶體中,以便稍後使用 Azure CLI 加以存取。 將輸出儲存在自定義映射中時,請確定輸出已上傳至指定的檔案,如下列範例所示:
echo "$deploymentOutput" > $ADE_OUTPUTS
ADE_STORAGE
是指位於的 /ade/storage
目錄。 在核心映像進入點期間,ADE 會從環境的記憶體容器提取特別命名 storage.zip
的檔案,並填入此目錄,然後在作業完成時,將目錄重新載入為 zip 檔案回到記憶體容器。 如果您有想要在後續重新部署時在自定義映像內參考的檔案,例如狀態檔案,請將檔案放在此目錄內。
ADE_CLIENT_ID
是指環境項目環境類型的受控服務識別 (MSI) 對象識別碼。 此變數可用來向 Azure CLI 驗證,以取得在容器內使用的許可權,例如部署基礎結構。
ADE_TENANT_ID
是指環境的租使用者 GUID。
ADE_SUBSCRIPTION_ID
是指環境的訂用帳戶 GUID。
ADE_TEMPLATE_FILE
是指環境定義中 『templatePath』 屬性中指定的主要範本檔案位於容器內的位置。 此路徑會根據您連接目錄的檔案路徑層級,大致鏡像目錄的來源控制。 檔案大致位於 /ade/repository/{CATALOG_NAME}/{PATH_TO_TEMPLATE_FILE}
。 這個方法主要在主要部署步驟期間使用,做為以部署為基礎所參考的檔案。
以下是使用 Azure CLI 的範例:
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 檔案或檔案,都會儲存在容器內範本檔案的相對位置,因為它們位於目錄內。 例如,採用下列目錄:
├───SampleCatalog
├───EnvironmentDefinition1
│ file1.bicep
│ main.bicep
│ environment.yaml
│
└───TestFolder
test1.txt
test2.txt
在此情況下,$ADE_TEMPLATE_FILE=/ade/repository/SampleCatalog/EnvironmentDefinition1/main.bicep
。 此外,file1.bicep 等檔案會位於 的容器 /ade/repository/SampleCatalog/EnvironmentDefinition1/file1.bicep
內,而test2.txt位於 /ade/repository/SampleCatalog/EnvironmentDefinition1/TestFolder/test2.txt
。
ADE_ENVIRONMENT_NAME
部署時指定之環境的名稱。
ADE_ENVIRONMENT_LOCATION
正在部署環境的位置。 此位置是項目的區域。
ADE_RESOURCE_GROUP_NAME
ADE 建立的資源群組名稱,以部署您的資源。
ADE_ENVIRONMENT_TYPE
用來部署此環境的專案環境類型名稱。
ADE_OPERATION_PARAMETERS
提供以部署環境之參數的 JSON 物件。 參數物件的範例如下:
{
"location": "locationInput",
"name": "nameInput",
"sampleObject": {
"sampleProperty": "sampleValue"
},
"sampleArray": [
"sampleArrayValue1",
"sampleArrayValue2"
]
}
ADE_OPERATION_NAME
在環境上執行的作業類型。 目前,此值為 'deploy' 或 'delete'。
ADE_HTTP__OPERATIONID
指派給在環境上執行之作業的作業標識碼。 作業標識碼會作為驗證來使用 ADE CLI,而且是從過去作業擷取記錄的主要標識碼。
ADE_HTTP__DEVCENTERID
環境的 開發人員中心 標識碼。 開發人員中心標識碼也會作為使用 ADE CLI 的驗證。