Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Определения среды развертывания Azure — это инфраструктура как код (IaC), написанная в Bicep или Terraform и хранящаяся в репозиториях. Вы можете изменить и адаптировать определения среды для ваших требований, а затем использовать их для создания среды развертывания в Azure. Схема environment.yaml определяет и описывает типы ресурсов Azure, включенных в определения среды.
Что такое environment.yaml?
Файл environment.yaml выступает в качестве манифеста, описывая используемые ресурсы и расположение шаблона для определения среды.
Пример окружения.yaml
Следующий пример файла environment.yaml необходим для определения вашей среды.
name: WebApp
version: 1.0.0
summary: Azure Web App Environment
description: Deploys a web app in Azure without a datastore
runner: ARM
templatePath: azuredeploy.json
Определения
В следующей таблице описаны свойства, которые можно использовать в environment.yaml.
Недвижимость | Тип | Описание | Обязательно? | Пример |
---|---|---|---|---|
name |
струна | Отображаемое имя элемента каталога. | Да | Веб-приложение |
version |
струна | Версия элемента каталога. | нет | 1.0.0 |
summary |
струна | Короткая строка, которая суммирует элемент каталога. | нет | Среда веб-приложения Azure |
description |
струна | Описание элемента каталога. | нет | Развертывание веб-приложения в Azure без хранилища данных |
runner |
струна | Образ контейнера, используемый при выполнении действий. | нет | Шаблон ARM Terraform |
templatePath |
струна | Относительный путь к файлу шаблона записи. | Да |
main.tf main.bicep azuredeploy.json |
parameters |
массив | Входные параметры, используемые при создании среды и выполнении действий. | нет | #/definitions/Parameter (Параметр) |
Параметры в environment.yaml
Параметры позволяют повторно использовать определение среды в разных сценариях. Например, разработчикам в разных регионах может потребоваться развернуть одну и ту же среду. Вы можете определить параметр расположения, чтобы предложить разработчикам ввести нужное расположение при создании сред.
Пример файла environment.yaml с параметрами
Следующий скрипт является примером файла environment.yaml, который включает два параметра: location
и name
.
name: WebApp
summary: Azure Web App Environment
description: Deploys a web app in Azure without a datastore
runner: ARM
templatePath: azuredeploy.json
parameters:
- id: "location"
name: "location"
description: "Location to deploy the environment resources"
default: "[resourceGroup().location]"
type: "string"
required: false
- id: "name"
name: "name"
description: "Name of the Web App "
default: ""
type: "string"
required: false
Определения параметров
В следующей таблице описаны типы данных, которые можно использовать в environment.yaml. Имена типов данных, используемые в файле манифеста environment.yaml, отличаются от тех, которые используются в шаблонах ARM.
Каждый параметр может использовать любое из следующих свойств:
Параметр | Тип | Описание | Дополнительные параметры |
---|---|---|---|
id |
струна | Уникальный идентификатор параметра. | |
name |
струна | Отображаемое имя параметра. | |
description |
струна | Описание параметра. | |
default |
массив логическое целое число число объект строка |
Значение по умолчанию параметра. | |
type |
массив логическое целое число число объект строка |
Тип данных параметра. Этот тип данных должен соответствовать типу данных параметра, который имеет соответствующее имя параметра в шаблоне ARM, Bicep-файле или terraform-файле. | Тип по умолчанию: строка |
readOnly |
булевый | Указывает, доступен ли параметр только для чтения. | |
required |
булевый | Является ли параметр обязательным. | |
allowed |
массив | Массив допустимых значений. | "items": { "type": "string" }, "minItems": 1, "uniqueItems": true, |
Схема YAML
Существует определенная схема для файлов среды развертывания Azure.yaml. Это может сделать редактирование этих файлов немного проще. Вы можете добавить определение схемы в начало вашего файла environment.yaml.
# yaml-language-server: $schema=https://github.com/Azure/deployment-environments/releases/download/2022-11-11-preview/manifest.schema.json
Ниже приведен пример определения среды, использующего схему:
# yaml-language-server: $schema=https://github.com/Azure/deployment-environments/releases/download/2022-11-11-preview/manifest.schema.json
name: FunctionApp
version: 1.0.0
summary: Azure Function App Environment
description: Deploys an Azure Function App, Storage Account, and Application Insights
runner: ARM
templatePath: azuredeploy.json
parameters:
- id: name
name: Name
description: 'Name of the Function App.'
type: string
required: true
- id: supportsHttpsTrafficOnly
name: 'Supports HTTPS Traffic Only'
description: 'Allows https traffic only to Storage Account and Functions App if set to true.'
type: boolean
- id: runtime
name: Runtime
description: 'The language worker runtime to load in the function app.'
type: string
allowed:
- 'dotnet'
- 'dotnet-isolated'
- 'java'
- 'node'
- 'powershell'
- 'python'
default: 'dotnet-isolated'