Udostępnij przez


Właściwości i parametry w pliku environment.yaml

Definicje środowiska wdrożeniowego Azure to infrastruktura jako kod (IaC), które są zapisywane w języku Bicep lub Terraform i przechowywane w repozytoriach kodu. Możesz modyfikować i dostosowywać definicje środowisk dla swoich wymagań, a następnie używać ich do tworzenia środowiska wdrażania na platformie Azure. Schemat environment.yaml definiuje i opisuje typy zasobów platformy Azure zawartych w definicjach środowiska.

Co to jest plik environment.yaml?

Plik environment.yaml działa jako manifest, opisując używane zasoby i lokalizację szablonu dla definicji środowiska.

Przykładowe środowisko.yaml

Poniższy skrypt to przykład pliku environment.yaml, który jest wymagany dla definicji środowiska.

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

Definicje

W poniższej tabeli opisano właściwości, których można użyć w pliku environment.yaml.

Nieruchomość Typ Opis Wymagane? Przykład
name sznurek Nazwa wyświetlana elementu wykazu. Tak Aplikacja webowa
version sznurek Wersja elementu katalogu. Nie. 1.0.0
summary sznurek Krótki ciąg podsumowujący element wykazu. Nie. Środowisko aplikacji internetowej platformy Azure
description sznurek Opis elementu wykazu. Nie. Wdraża aplikację internetową na platformie Azure bez magazynu danych
runner sznurek Obraz kontenera do użycia podczas uruchamiania akcji. Nie. Szablon ARM
Terraform
templatePath sznurek Ścieżka względna pliku szablonu wpisu. Tak
main.tf main.bicep
azuredeploy.json
parameters układ Parametry wejściowe do użycia podczas tworzenia środowiska i uruchamiania akcji. Nie. #/definitions/Parameter

Parametry w pliku environment.yaml

Parametry umożliwiają ponowne użycie definicji środowiska w różnych scenariuszach. Na przykład deweloperzy w różnych regionach mogą chcieć wdrożyć to samo środowisko. Możesz zdefiniować parametr lokalizacji, aby monitować deweloperów o wprowadzenie żądanej lokalizacji podczas tworzenia ich środowisk.

Przykładowe środowisko.yaml z parametrami

Poniższy skrypt to przykład pliku environment.yaml, który zawiera dwa parametry: location i 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

Definicje parametrów

W poniższej tabeli opisano typy danych, których można użyć w pliku environment.yaml. Nazwy typów danych używane w pliku manifestu environment.yaml różnią się od nazw używanych w szablonach usługi ARM.

Każdy parametr może używać dowolnej z następujących właściwości:

Parametr Typ Opis Dodatkowe ustawienia
id sznurek Unikatowy identyfikator parametru.
name sznurek Nazwa wyświetlana parametru.
description sznurek Opis parametru.
default tablica
logiczny
całkowita
liczba
obiekt
ciąg
Wartość domyślna parametru.
type tablica
logiczny
całkowita
liczba
obiekt
ciąg
Typ danych parametru. Typ danych musi odpowiadać typowi danych parametru, który ma odpowiadającą nazwę parametru w szablonie ARM, pliku Bicep lub pliku Terraform. Typ domyślny: ciąg
readOnly typ logiczny (boolowski) Czy parametr jest tylko do odczytu.
required typ logiczny (boolowski) Czy parametr jest wymagany.
allowed układ Tablica dozwolonych wartości. "items": {
"type": "string"
},
"minItems": 1, "uniqueItems": true,

Schemat YAML

Istnieje zdefiniowany schemat dla plików Środowiska wdrażania platformy Azure.yaml. Edytowanie tych plików może być nieco łatwiejsze. Definicję schematu można dodać na początku pliku environment.yaml:

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

Oto przykładowa definicja środowiska korzystająca ze schematu:

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