Поделиться через


Справочник по переменным среды развертывания Azure

Среды развертывания 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 и является основным идентификатором для получения журналов из прошлых операций.

ADE_HTTP__DEVCENTERID

Идентификатор Центр разработки среды. Идентификатор Центр разработки также используется в качестве проверки для использования интерфейса командной строки ADE.