你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
environment.yaml 中的参数和数据类型
ADE 环境定义是基础结构即代码(IaC),以 Bicep 或 Terraform 编写,存储在存储库中。 可以根据特定要求修改和调整环境定义,然后用于在 Azure 上创建部署环境。 environment.yaml 架构定义并描述环境定义中包含的 Azure 资源类型。
什么是 environment.yaml?
environment.yaml 文件充当清单,描述所使用的资源和环境定义的模板位置。
示例 environment.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 | string | 目录项的显示名称。 | 是 | |
版本 | string | 目录项的版本。 | 1.0.0 | |
summary | string | 有关目录项的简短摘要字符串。 | ||
description | string | 目录项的说明。 | ||
转轮 | string | 执行操作时要使用的容器映像。 | ARM 模板 Terraform |
|
templatePath | string | 条目模板文件的相对路径。 | 是 | 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 | string | 参数的唯一 ID。 | |
name | string | 参数的显示名称。 | |
description | string | 参数的说明。 | |
默认值 | 数组 布尔 整数 对象 字符串 |
参数的默认值。 | |
type | 数组 布尔 整数 对象 字符串 |
参数的数据类型。 此数据类型必须与 ARM 模板、BICEP 文件或 Terraform 文件中的参数数据类型与相应的参数名称匹配。 | 默认类型: 字符串 |
readOnly | boolean | 此参数是否为只读。 | |
必答 | boolean | 是否需要此参数。 | |
array | 允许值的数组。 | “items”: { “type”: “string” }, “minItems”: 1, “uniqueItems”: true, |
YAML 架构
Azure 部署环境 environment.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'