Fitur dan konfigurasi alur tingkat lanjut

Anda dapat memperluas azd pipeline config perintah untuk mendukung skenario tingkat lanjut dan persyaratan kustom, seperti yang dijelaskan di bagian berikut.

Rahasia dan variabel kustom

Secara default, azd mengatur variabel dan rahasia penting untuk alur Anda. Misalnya, ketika Anda menjalankan azd pipeline config, itu membuat variabel seperti subscription id, , environment namedan region. Variabel ini dirujuk dalam definisi alur Anda:

env:
   AZURE_CLIENT_ID: ${{ vars.AZURE_CLIENT_ID }}
   AZURE_TENANT_ID: ${{ vars.AZURE_TENANT_ID }}
   AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
   AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
   AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}

Saat alur berjalan, azd mengambil nilai-nilai ini dari lingkungan dan memetakannya ke variabel dan rahasia alur. Bergantung pada templat Anda, Anda mungkin ingin mengontrol pengaturan tambahan menggunakan variabel lingkungan. Misalnya, Anda dapat mengatur KEY_VAULT_NAME variabel lingkungan untuk menentukan nama sumber daya Key Vault di infrastruktur Anda.

Untuk mendukung variabel dan rahasia kustom, tentukan dalam file templat azure.yaml Anda. Contohnya:

pipeline:
  variables:
    - KEY_VAULT_NAME
    - STORAGE_NAME
  secrets:
    - CONNECTION_STRING

Dengan konfigurasi ini, azd memeriksa apakah salah satu variabel atau rahasia yang tercantum memiliki nilai di lingkungan. Kemudian membuat variabel atau rahasia yang sesuai dalam pipelin, menggunakan nilai variabel lingkungan.

Anda dapat mereferensikan variabel dan rahasia ini dalam definisi alur Anda azure-dev.yaml :

- name: Provision Infrastructure
   run: azd provision --no-prompt
   env:
      KEY_VAULT_NAME: ${{ variables.KEY_VAULT_NAME }}
      STORAGE_NAME: ${{ variables.STORAGE_NAME }}
      CONNECTION_STRING: ${{ secrets.CONNECTION_STRING }}

Nota

Setelah memperbarui daftar rahasia atau variabel dalam azure.yaml, jalankan azd pipeline config ulang untuk memperbarui nilai alur.

Parameter infrastruktur

Pertimbangkan contoh Bicep berikut:

@secure()
param BlobStorageConnection string

BlobStorageConnection Jika parameter tidak memiliki nilai default, azd meminta nilai selama penyiapan. Namun, tidak ada perintah interaktif selama proses CI/CD. Sebagai gantinya, azd meminta nilai saat Anda menjalankan azd pipeline config, menyimpannya sebagai rahasia alur, dan mengambilnya secara otomatis saat alur berjalan.

azd menggunakan rahasia alur yang dipanggil AZD_INITIAL_ENVIRONMENT_CONFIG untuk menyimpan dan menyediakan nilai parameter yang diperlukan. Referensikan rahasia ini dalam definisi alur Anda:

- name: Provision Infrastructure
   run: azd provision --no-prompt
   env:
      AZD_INITIAL_ENVIRONMENT_CONFIG: ${{ secrets.AZD_INITIAL_ENVIRONMENT_CONFIG }}

Saat alur berjalan, azd menggunakan rahasia untuk menyediakan nilai parameter, menghilangkan kebutuhan akan perintah interaktif.

Nota

Jika Anda menambahkan parameter baru, jalankan azd pipeline config ulang untuk memperbarui konfigurasi alur.