Delen via


Eigenschappen en parameters in environment.yaml

Omgevingsdefinities voor Azure Deployment Environments zijn infrastructuur als code (IaC) die zijn geschreven in Bicep of Terraform en zijn opgeslagen in opslagplaatsen. U kunt omgevingsdefinities voor uw vereisten wijzigen en aanpassen en deze vervolgens gebruiken 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.

Een voorbeeld van environment.yaml

Het volgende script is een voorbeeld van de environment.yaml die vereist is 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.

Vastgoed Typ Beschrijving Vereist? Voorbeeld
name touw De weergavenaam van het catalogusitem. Ja Webapplicatie
version touw De versie van het catalogusitem. Nee. 1.0.0
summary touw Een korte tekenreeks die het catalogusitem samenvat. Nee. Azure Web App Environment
description touw Een beschrijving van het catalogusitem. Nee. Implementeert een web-app in Azure zonder een gegevensarchief
runner touw De containerafbeelding die je gebruikt bij het uitvoeren van acties. Nee. ARM-sjabloon
Terraform
templatePath touw Het relatieve pad van het invoersjabloonbestand. Ja main.tf
main.bicep
azuredeploy.json
parameters array Invoerparameters die moeten worden gebruikt bij het maken van de omgeving en het uitvoeren van acties. Nee. #/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 ontwikkelaars te vragen de gewenste locatie in te voeren wanneer ze hun omgevingen maken.

Voorbeeld van environment.yaml-bestand 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:

Maatstaf Typ Beschrijving Aanvullende instellingen
id touw Een unieke id van de parameter.
name touw Een weergavenaam voor de parameter.
description touw Een beschrijving van de parameter.
default matrix
booleaanse
getalobjecttekenreeks voor gehele getallen


De standaardwaarde van de parameter.
type array
boolean
geheel getal
nummer
object
tekenreeks
Het gegevenstype van de parameter. Dit gegevenstype moet overeenkomen met het parametergegevenstype met de bijbehorende parameternaam in de ARM-sjabloon, het Bicep-bestand of het Terraform-bestand. Standaardtype: tekenreeks
readOnly booleaan Of de parameter het kenmerk Alleen-lezen heeft.
required booleaan Of een parameter vereist is.
allowed array 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. Het kan het bewerken van deze bestanden een beetje eenvoudiger maken. 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'