Delen via


Parameters en gegevenstypen in environment.yaml

ADE-omgevingsdefinities zijn infrastructuur als code (IaC), geschreven in Bicep of Terraform, opgeslagen in opslagplaatsen. Omgevingsdefinities kunnen worden gewijzigd en aangepast voor uw specifieke vereisten en vervolgens worden gebruikt om een implementatieomgeving in Azure te maken. Het schema environment.yaml definieert en beschrijft de typen Azure-resources die zijn opgenomen in omgevingsdefinities.

Wat is environment.yaml?

Het bestand environment.yaml fungeert als een manifest, waarin de resources worden beschreven die worden gebruikt en de locatie van de sjabloon voor de omgevingsdefinitie.

Voorbeeldomgeving.yaml

Het volgende script is een algemeen voorbeeld van een environment.yaml die is vereist voor uw omgevingsdefinitie.

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

Definities

In de volgende tabel worden de eigenschappen beschreven die u in environment.yaml kunt gebruiken.

Eigenschappen Type Beschrijving Vereist Voorbeelden
name tekenreeks De weergavenaam van het catalogusitem. Ja
versie tekenreeks De versie van het catalogusitem. 1.0.0
samenvatting tekenreeks Een korte samenvattingstekenreeks over het catalogusitem.
beschrijving tekenreeks Een beschrijving van het catalogusitem.
Runner tekenreeks De containerinstallatiekopieën die moeten worden gebruikt bij het uitvoeren van acties. ARM-sjabloon
Terraform
templatePath tekenreeks Het relatieve pad van het invoersjabloonbestand. Ja
main.tf main.bicep
azuredeploy.json
parameters matrix Invoerparameters die moeten worden gebruikt bij het maken van de omgeving en het uitvoeren van acties. #/definities/parameter

Parameters in environment.yaml

Met parameters kunt u een omgevingsdefinitie opnieuw gebruiken in verschillende scenario's. U wilt bijvoorbeeld dat ontwikkelaars in verschillende regio's dezelfde omgeving implementeren. U kunt een locatieparameter definiëren om de ontwikkelaar te vragen de gewenste locatie in te voeren tijdens het maken van hun omgeving.

Voorbeeldomgeving.yaml met parameters

Het volgende script is een voorbeeld van een environment.yaml-bestand dat twee parameters bevat; location en 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

Parameterdefinities

In de volgende tabel worden de gegevenstypen beschreven die u in environment.yaml kunt gebruiken. De namen van het gegevenstype die worden gebruikt in het manifestbestand environment.yaml verschillen van de namen die worden gebruikt in ARM-sjablonen.

Elke parameter kan een van de volgende eigenschappen gebruiken:

Eigenschappen Type Beschrijving Verdere Instellingen
Id tekenreeks Unieke id van de parameter.
name tekenreeks Weergavenaam van de parameter.
beschrijving tekenreeks Beschrijving van de parameter.
default matrix
booleaanse
getalobjecttekenreeks voor gehele getallen


De standaardwaarde van de parameter.
type matrix
booleaanse
getalobjecttekenreeks voor gehele getallen


Het gegevenstype van de parameter. Dit gegevenstype moet overeenkomen met het parametergegevenstype in de ARM-sjabloon, BICEP-bestand of Terraform-bestand met de bijbehorende parameternaam. Standaardtype: tekenreeks
Readonly boolean Of deze parameter al dan niet alleen-lezen is.
vereist boolean Of deze parameter al dan niet vereist is.
toegestaan matrix Een matrix met toegestane waarden. "items": {
"type": "string"
},
"minItems": 1,
"uniqueItems": true,

YAML-schema

Er is een gedefinieerd schema voor Azure Deployment Environments environment.yaml-bestanden, waardoor het bewerken van deze bestanden iets eenvoudiger kan worden. U kunt de schemadefinitie toevoegen aan het begin van het bestand environment.yaml:

# yaml-language-server: $schema=https://github.com/Azure/deployment-environments/releases/download/2022-11-11-preview/manifest.schema.json

Hier volgt een voorbeeld van een omgevingsdefinitie die gebruikmaakt van het schema:

# 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'