Share via


Instellingen pushen naar App Configuration met Azure Pipelines

De Azure App Configuration push-taak pusht sleutelwaarden uit een configuratiebestand naar uw App Configuration archief. Deze taak maakt volledige cirkelfunctionaliteit binnen de pijplijn mogelijk, omdat u nu instellingen kunt ophalen uit de App Configuration store en instellingen kunt pushen naar de App Configuration store.

Vereisten

Een serviceverbinding maken

Een serviceverbinding geeft u toegang tot resources in uw Azure-abonnement vanuit uw Azure DevOps-project.

  1. Ga in Azure DevOps naar het project dat uw doelpijplijn bevat. Selecteer Projectinstellingen in de linkerbenedenhoek.

  2. Selecteer onder Pipelines de optie Serviceverbindingen. Selecteer nieuwe serviceverbinding in de rechterbovenhoek.

  3. Selecteer in Nieuwe serviceverbindingde optie Azure Resource Manager.

    Schermopname van het selecteren van Azure Resource Manager in de vervolgkeuzelijst Nieuwe serviceverbinding.

  4. Selecteer in het dialoogvenster Verificatiemethodede optie Service-principal (automatisch) om een nieuwe service-principal te maken of selecteer Service-principal (handmatig) om een bestaande service-principal te gebruiken.

  5. Voer uw abonnement, resourcegroep en een naam voor uw serviceverbinding in.

Als u een nieuwe service-principal hebt gemaakt, zoekt u de naam van de service-principal die is toegewezen aan de serviceverbinding. In de volgende stap voegt u een nieuwe roltoewijzing toe aan deze service-principal.

  1. Ga naar Project Settings>Service connections.

  2. Selecteer de nieuwe serviceverbinding.

  3. Selecteer Service-principal beheren.

  4. Noteer de waarde in Weergavenaam.

    Schermopname van de weergavenaam van de service-principal.

Roltoewijzing toevoegen

Wijs de juiste App Configuration roltoewijzingen toe aan de referenties die in de taak worden gebruikt, zodat de taak toegang heeft tot het App Configuration-archief.

  1. Ga naar uw doel App Configuration store.

  2. Selecteer toegangsbeheer (IAM) in het linkermenu.

  3. Selecteer in het rechterdeelvenster Roltoewijzingen toevoegen.

    Schermopname van de knop Roltoewijzingen toevoegen.

  4. Bij Rol selecteert u App Configuration Gegevenseigenaar. Met deze rol kan de taak lezen uit en schrijven naar het App Configuration-archief.

  5. Selecteer de service-principal die is gekoppeld aan de serviceverbinding die u in de vorige sectie hebt gemaakt.

    Schermopname van het dialoogvenster Roltoewijzing toevoegen.

  6. Selecteer Beoordelen en toewijzen.

Gebruiken in builds

In deze sectie wordt beschreven hoe u de Azure App Configuration Push-taak gebruikt in een Azure DevOps-build-pijplijn.

  1. Ga naar de pagina pijplijn bouwen door te klikken op Pipelines>Pipelines. Documentatie voor build-pijplijnen vindt u hier.
    • Als u een nieuwe build-pijplijn maakt, selecteert u in de laatste stap van het proces op het tabblad Controleren de optie Assistent weergeven aan de rechterkant van de pijplijn.

      Schermopname van de knop Assistent weergeven voor een nieuwe pijplijn.

    • Als u een bestaande build-pijplijn gebruikt, klikt u rechtsboven op de knop Bewerken .

      Schermopname van de knop Bewerken voor een bestaande pijplijn.

  2. Zoek naar de Azure App Configuration Push-taak.

    Schermopname van het dialoogvenster Taak toevoegen met Azure App Configuration Push in het zoekvak.

  3. Configureer de benodigde parameters voor de taak om de sleutelwaarden van het configuratiebestand naar het App Configuration-archief te pushen. Uitleg van de parameters is beschikbaar in de sectie Parameters hieronder en in knopinfo naast elke parameter.

    Schermopname van de parameters voor de pushtaak van de app-configuratie.

  4. Sla een build op en zet deze in de wachtrij. In het buildlogboek worden eventuele fouten weergegeven die zijn opgetreden tijdens het uitvoeren van de taak.

Gebruiken in releases

In deze sectie wordt beschreven hoe u de Azure App Configuration Push-taak gebruikt in een Azure DevOps-releasepijplijn.

  1. Navigeer naar de pagina Release-pijplijn door Pijplijnreleases> te selecteren. Documentatie voor release-pijplijnen vindt u hier.
  2. Kies een bestaande release-pijplijn. Als u nog geen account hebt, selecteert u + Nieuw om een nieuwe te maken.
  3. Selecteer de knop Bewerken in de rechterbovenhoek om de release-pijplijn te bewerken.
  4. Kies in de vervolgkeuzelijst Taken de fase waaraan u de taak wilt toevoegen. Meer informatie over fasen vindt u hier.

    Schermopname van de geselecteerde fase in de vervolgkeuzelijst Taken.

  5. Klik op + naast de taak waaraan u een nieuwe taak wilt toevoegen.

    Schermopname van de plusknop naast de taak.

  6. Typ in het dialoogvenster Taken toevoegenAzure App Configuration Push in het zoekvak en selecteer dit.
  7. Configureer de benodigde parameters in de taak om uw sleutelwaarden vanuit uw configuratiebestand naar uw App Configuration-archief te pushen. Uitleg van de parameters is beschikbaar in de sectie Parameters hieronder en in knopinfo naast elke parameter.
  8. Sla een release op en zet deze in de wachtrij. In het releaselogboek worden eventuele fouten weergegeven die zijn opgetreden tijdens het uitvoeren van de taak.

Parameters

De volgende parameters worden gebruikt door de App Configuration Push-taak:

  • Azure-abonnement: een vervolgkeuzelijst met uw beschikbare Azure-serviceverbindingen. Als u uw lijst met beschikbare Azure-serviceverbindingen wilt bijwerken en vernieuwen, drukt u op de knop Azure-abonnement vernieuwen rechts van het tekstvak.
  • App Configuration-eindpunt: een vervolgkeuzelijst waarin uw beschikbare configuratie wordt geladen, wordt het eindpunt onder het geselecteerde abonnement opgeslagen. Als u uw lijst met beschikbare configuratieopslageindpunten wilt bijwerken en vernieuwen, drukt u op de knop Vernieuwen App Configuration Eindpunt rechts van het tekstvak.
  • Pad naar configuratiebestand: het pad naar uw configuratiebestand. De parameter Pad naar configuratiebestand begint in de hoofdmap van de bestandsopslagplaats. U kunt door uw buildartefact bladeren om een configuratiebestand te selecteren. (... rechts van het tekstvak). De ondersteunde bestandsindelingen zijn afhankelijk van het bestandsinhoudsprofiel. Voor het standaardprofiel zijn yaml, json en eigenschappen de ondersteunde bestandsindelingen. Voor het KvSet-profiel is json de ondersteunde bestandsindeling.
  • Bestandsinhoudsprofiel: het inhoudsprofiel van het configuratiebestand. De standaardwaarde is Standaard.
    • Standaard: verwijst naar de conventionele configuratiebestandsindelingen die rechtstreeks kunnen worden gebruikt door toepassingen.
    • Kvset: Verwijst naar een bestandsschema dat alle eigenschappen van een App Configuration sleutelwaarde bevat, waaronder sleutel, waarde, label, inhoudstype en tags. De taakparameters Scheidingsteken, Label, Inhoudstype, Voorvoegsel, Tags en Diepte zijn niet van toepassing wanneer u het Kvset-profiel gebruikt.
  • Importmodus: de standaardwaarde is Alle. Bepaalt het gedrag bij het importeren van sleutelwaarden.
    • Alle: hiermee importeert u alle sleutelwaarden in het configuratiebestand naar App Configuration.
    • Ignore-Match: importeert alleen instellingen die geen overeenkomende sleutelwaarde hebben in App Configuration. Overeenkomende sleutelwaarden worden beschouwd als sleutelwaarden met dezelfde sleutel, label, waarde, inhoudstype en tags.
  • Drooguitvoering: de standaardwaarde is Uitgeschakeld.
    • Gecontroleerd: er worden geen updates uitgevoerd voor App Configuration. In plaats daarvan worden alle updates die in een normale uitvoering zouden zijn uitgevoerd, afgedrukt naar de console voor controle.
    • Uitgeschakeld: voert eventuele updates voor App Configuration uit en wordt niet afgedrukt op de console.
  • Scheidingsteken: het scheidingsteken dat wordt gebruikt om .json- en .yml-bestanden plat te maken.
  • Diepte: de diepte waarop de .json- en .yml-bestanden worden afgevlakt.
  • Voorvoegsel: Een tekenreeks die wordt toegevoegd aan het begin van elke sleutel die naar het App Configuration archief wordt gepusht.
  • Label: een tekenreeks die aan elke sleutelwaarde wordt toegevoegd als het label in het App Configuration-archief.
  • Inhoudstype: een tekenreeks die aan elke sleutelwaarde wordt toegevoegd als het inhoudstype in het App Configuration-archief.
  • Tags: een JSON-object in de indeling van {"tag1":"val1", "tag2":"val2"}, waarmee tags worden gedefinieerd die worden toegevoegd aan elke sleutelwaarde die naar uw App Configuration archief wordt gepusht.
  • Sleutelwaarden verwijderen die niet zijn opgenomen in het configuratiebestand: standaardwaarde is Uitgeschakeld. Het gedrag van deze optie is afhankelijk van het inhoudsprofiel van het configuratiebestand.
    • Gecontroleerd:
      • Standaardinhoudsprofiel: verwijdert alle sleutelwaarden in het App Configuration archief die overeenkomen met zowel het opgegeven voorvoegsel als het label voordat nieuwe sleutelwaarden uit het configuratiebestand worden gepusht.
      • Kvset-inhoudsprofiel: verwijdert alle sleutelwaarden in het App Configuration-archief die niet zijn opgenomen in het configuratiebestand voordat nieuwe sleutelwaarden uit het configuratiebestand worden gepusht.
    • Uitgeschakeld: pusht alle sleutelwaarden uit het configuratiebestand naar het App Configuration-archief en laat alle andere waarden in het App Configuration archief intact.

Problemen oplossen

Als er een onverwachte fout optreedt, kunnen foutopsporingslogboeken worden ingeschakeld door de pijplijnvariabele system.debug in te stellen op true.

Veelgestelde vragen

Hoe kan ik meerdere configuratiebestanden uploaden?

Maak meerdere exemplaren van de Azure App Configuration Push-taak binnen dezelfde pijplijn om meerdere configuratiebestanden naar het App Configuration archief te pushen.

Hoe kan ik Key Vault verwijzingen of functievlagmen maken met behulp van deze taak?

Afhankelijk van het bestandsinhoudsprofiel dat u hebt geselecteerd, raadpleegt u voorbeelden in de Azure App Configuration ondersteuning voor configuratiebestand.

Waarom krijg ik een 409-fout bij het pushen van sleutelwaarden naar mijn configuratiearchief?

Er treedt een 409-conflictfout op als de taak probeert een sleutelwaarde te verwijderen of te overschrijven die is vergrendeld in de App Configuration store.