Megosztás a következőn keresztül:


Konfigurációs fájlok importálása a GitHub-adattárból az App Configuration Store-ba

Ha kódként elfogadta a Konfigurációt, és a GitHubon kezeli a konfigurációkat, a GitHub Actions használatával automatikusan importálhat konfigurációs fájlokat a GitHub-adattárból az Alkalmazáskonfigurációs áruházba. Ez lehetővé teszi, hogy a szokásos módon módosítsa a konfigurációs fájlokat, miközben az App Configuration Store előnyei a következők:

  • A kódon kívüli központosított konfiguráció.
  • A konfiguráció frissítése a teljes alkalmazás ismételt üzembe helyezése nélkül.
  • Integráció olyan szolgáltatásokkal, mint a Azure-alkalmazás Szolgáltatás és függvények.

A GitHub Action-munkafolyamatok automatizált folyamatot határoznak meg egy GitHub-adattárban. Ha konfigurálási fájlt szeretne importálni a GitHub-adattárból Azure-alkalmazás Configuration Store-ba, használja az Azure CLI GitHub-műveletet, amely teljes körű képességeket biztosít az alkalmazáskonfigurációs tárolóba történő fájlimportáláshoz.

Hitelesítés

A konfigurációk Azure-alkalmazás Konfigurációtárba való importálásához a következő módszerek egyikével hitelesíthet:

A Microsoft Entra-azonosító használata

A hitelesítés ajánlott módja a Microsoft Entra ID használata, amely lehetővé teszi az Azure-erőforrásokhoz való biztonságos kapcsolódást. A hitelesítési folyamatot az Azure Login GitHub-művelettel automatizálhatja.

Az Azure Login lehetővé teszi a szolgáltatásnevek titkos kulcsokkal való hitelesítését, vagy az OpenID Connect használatát összevont identitás hitelesítő adatokkal. Ebben a példában az OpenID Connect használatával fog bejelentkezni az Alkalmazáskonfigurációs áruházba.

Az Azure-bejelentkezés használata az OpenID Connect használatával

Az Azure Login openID Connecttel való használatához a következőkre lesz szüksége:

  1. Microsoft Entra-alkalmazás beállítása egyszerű szolgáltatásnévvel.
  2. Rendelje hozzá a Microsoft Entra-alkalmazáshoz az alkalmazáskonfigurációs adattulajdonosi szerepkört, hogy a GitHub-művelet beolvassa és beírhassa az alkalmazáskonfigurációs áruházba.
  3. Adja meg a Microsoft Entra-alkalmazás ügyfél-azonosítóját, bérlőazonosítóját és előfizetés-azonosítóját a bejelentkezési művelethez. Ezek az értékek közvetlenül a munkafolyamatban vagy GitHub-titkos kódként tárolhatók a jobb biztonság érdekében. Az alábbi példában ezek az értékek titkos kulcsként vannak beállítva. A titkos kódok GitHubon való használatáról további információt a Titkos kódok használata a GitHub Actionsben című témakörben talál.

A GitHub-művelet használatának megkezdéséhez nyissa meg az adattárat, és válassza a Műveletek lapot. Válassza az Új munkafolyamat lehetőséget, majd saját maga állítsa be a munkafolyamatot. Végül keressen rá a piactéren az "Azure Login" kifejezésre. Miután megtalálta, kattintson a műveletre, és másolja a megadott kódrészletet a munkafolyamat-fájlba.

A Művelet lap kiválasztása

Válassza ki az Azure Bejelentkezési műveletet

Példa a Microsoft Entra-azonosító használatára

# Set permissions for the workflow. Specify 'id-token: write' to allow OIDC token generation at the workflow level.
permissions: 
  id-token: write
  contents: read
 
jobs: 
  syncconfig: 
    runs-on: ubuntu-latest 
    steps: 
      - name: Azure login
        uses: azure/login@v2
        with:
          client-id: ${{ secrets.AZURE_CLIENT_ID }}
          tenant-id: ${{ secrets.AZURE_TENANT_ID }}
          subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

Kapcsolati sztring használata

Másik lehetőségként hitelesítheti a kapcsolati sztring közvetlenül az Azure CLI-parancsnak való átadásával. Ez a módszer magában foglalja a kapcsolati sztring az Azure Portalról való lekérését és a parancsokban vagy szkriptekben való használatát.

Első lépésként az Azure Portalon az Alkalmazáskonfigurációs áruház hozzáférési beállításai között találja meg a kapcsolati sztring.

Ezután állítsa be ezt a kapcsolati sztring titkos változóként a GitHub-adattárban. A titkos kódok GitHubon való használatáról további információt a Titkos kódok használata a GitHub Actionsben című témakörben talál.

Példa egy kapcsolati sztring

on: 
  push: 
    branches: 
      - 'main' 
    paths: 
      - 'appsettings.json'
 
jobs: 
  syncconfig: 
    runs-on: ubuntu-latest
    
    # pass the secret variable as an environment variable to access it in your CLI action.
    env:
      CONNECTION_STRING: ${{ secrets.<ConnectionString> }}

Konfigurációs fájl importálása

Az Azure CLI GitHub-művelettel importálhat egy konfigurációs fájlt az Alkalmazáskonfigurációs áruházba. A GitHub-művelet használatának megkezdéséhez nyissa meg az adattárat, és válassza a Műveletek lapot. Válassza az Új munkafolyamat lehetőséget, majd saját maga állítsa be a munkafolyamatot. Végül keressen rá a piactéren az "Azure CLI-művelet" kifejezésre. Miután megtalálta, kattintson a műveletre, és másolja a megadott kódrészletet a munkafolyamat-fájlba.

Az Azure CLI-művelet kiválasztása

Az alábbi példában az Azure CLI-művelettel importálja a konfigurációs fájlokat egy Azure-alkalmazás Konfigurációs tárba, amikor a rendszer módosítást appsettings.jsonküld. Amikor egy fejlesztő leküld egy módosítást appsettings.json, az Azure CLI-műveletnek átadott szkript frissíti az Alkalmazáskonfigurációs áruházat az új értékekkel.

A munkafolyamat on szakasza azt határozza meg, hogy a művelet a fő ágba irányuló appsettings.json leküldésen aktiválódik. A feladatok szakasz a művelet elindítása után futtatott feladatokat sorolja fel. A művelet ellenőrzi a megfelelő fájlokat, és frissíti az Alkalmazáskonfigurációs áruházat.

on: 
  push: 
    branches: 
      - 'main' 
    paths: 
      - 'appsettings.json'

# Set permissions for the workflow. Specify 'id-token: write' to allow OIDC token generation at the workflow level.
permissions: 
  id-token: write
  contents: read

jobs: 
  syncconfig: 
    runs-on: ubuntu-latest 
    steps: 
      - name: Azure login
        uses: azure/login@v2
        with:
          client-id: ${{ secrets.AZURE_CLIENT_ID }}
          tenant-id: ${{ secrets.AZURE_TENANT_ID }}
          subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}

      # checkout done so that files in the repo can be read by the sync 
      - uses: actions/checkout@v1 
      - uses: azure/cli@v2
        with: 
          azcliversion: latest
          inlineScript: |
            az appconfig kv import --endpoint <your-app-configuration-store-endpoint> --auth-mode login -s file --path appsettings.json --format json --yes

A Azure-alkalmazás konfigurációs parancssori felület importálási parancsaival kapcsolatos további információkért tekintse meg a Azure-alkalmazás Konfigurációs parancssori felület dokumentációját.

Dinamikus címke használata importáláskor

Ha dinamikus címkét használ minden importáláshoz, az jó módszer a konfigurációk világos és pontos verziókövetésének fenntartására. Lehetővé teszi az alkalmazáskonfigurációs tárolóba történő importálások egyedi azonosítását, így egyszerűbbé válik a konfigurációfrissítések kódmódosításainak leképezése.

Példa dinamikus címke importáláskor történő használatára

Az alábbi példában az összes importált kulcsérték egyedi címkével fog rendelkezni a véglegesítés kivonata alapján.

 jobs: 
  syncconfig: 
    runs-on: ubuntu-latest 
    steps:      
      # Creates a label based on the branch name and the first 8 characters          
      # of the commit hash 
      - id: determine_label 
        run: echo ::set-output name=LABEL::"${GITHUB_REF#refs/*/}/${GITHUB_SHA:0:8}" 
      # checkout done so that files in the repo can be read by the sync 
      - uses: actions/checkout@v1 
      - uses: azure/cli@v2
        with: 
          azcliversion: latest
          inlineScript: |
            az appconfig kv import --endpoint <your-app-configuration-store-endpoint> --auth-mode login -s file --path appsettings.json --format json --label ${{ steps.determine_label.outputs.LABEL }} --yes

Következő lépések

A parancssori felület importálási parancsainak használatáról az Azure CLI importálási parancsait ismertető átfogó útmutatónkban olvashat.

A különböző fájltartalom-profilokkal kapcsolatos további információkért lásd Azure-alkalmazás konfigurációs fájlok konfigurációs támogatását.