Implementatiepoorten

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Poorten maken het automatisch verzamelen van statussignalen van externe services mogelijk en bevorderen vervolgens de release wanneer alle signalen succesvol zijn of de implementatie bij time-out stoppen. Poorten worden doorgaans gebruikt in verband met incidentbeheer, probleembeheer, wijzigingsbeheer, bewaking en externe goedkeuringssystemen.

Gebruiksgevallen

Enkele veelvoorkomende gebruiksvoorbeelden voor implementatiepoorten zijn:

  • Incidentbeheer: zorg ervoor dat aan bepaalde criteria wordt voldaan voordat u doorgaat met de implementatie. Zorg er bijvoorbeeld voor dat de implementatie alleen plaatsvindt als er geen bugs met prioriteit nul bestaan.
  • Goedkeuringen zoeken: informeer externe gebruikers, zoals juridische afdelingen, auditors of IT-managers over een implementatie door te integreren met andere services, zoals Microsoft Teams of Slack, en te wachten op hun goedkeuringen.
  • Kwaliteitsvalidatie: Metrische gegevens voor querypijplijnen, zoals wachtwoordfrequentie of codedekking, en alleen implementeren als ze zich binnen een vooraf gedefinieerde drempelwaarde bevinden.
  • Beveiligingsscan: voer beveiligingscontroles uit, zoals het scannen van artefacten, het ondertekenen van programmacode en beleidscontrole. Een implementatiepoort kan de scan initiëren en wachten tot deze is voltooid, of alleen controleren op voltooiing.
  • Gebruikerservaring ten opzichte van basislijn: Gebruik van producttelemetrie om ervoor te zorgen dat de gebruikerservaring niet is teruggedraaid van de basislijnstatus. De metrische gegevens van de gebruikerservaring voordat de implementatie als basislijn kan worden gebruikt.
  • Wijzigingsbeheer: wacht tot de procedures voor wijzigingsbeheer in een systeem, zoals ServiceNow, zijn voltooid voordat u doorgaat met de implementatie.
  • Infrastructuurstatus: voer de bewaking uit en valideer de infrastructuur op basis van nalevingsregels na de implementatie, of wacht op gezond resourcegebruik en een positief beveiligingsrapport.

De meeste statusparameters variëren in de loop van de tijd, veranderen hun status regelmatig van gezond naar beschadigd en weer in orde. Om rekening te houden met dergelijke variaties, worden alle poorten periodiek opnieuw geëvalueerd totdat ze allemaal op hetzelfde moment succesvol zijn. De uitvoering en implementatie van de release gaan niet verder als alle poorten niet in hetzelfde interval slagen en vóór de geconfigureerde time-out.

Een poort voor een fase definiëren

U kunt poorten inschakelen aan het begin van een fase (voorwaarden vóór implementatie) of aan het einde van een fase (voorwaarden na implementatie) of voor beide. Zie Poorten instellen voor meer informatie.

De vertraging vóór de evaluatie is een tijdsvertraging aan het begin van het gate-evaluatieproces waarmee de poorten kunnen worden geïnitialiseerd, gestabiliseerd en nauwkeurige resultaten kunnen worden geboden voor de huidige implementatie. zie Gate-evaluatiestromen voor meer informatie.

Een schermopname van de vertraging vóór evaluatiefunctie in gates.

  • Voor poorten vóór de implementatie is de vertraging de tijd die nodig is voor alle bugs die moeten worden geregistreerd voor de artefacten die worden geïmplementeerd.
  • Voor poorten na de implementatie is de vertraging het maximum van de tijd die nodig is voor de geïmplementeerde app om een stabiele operationele status te bereiken, de tijd die nodig is voor de uitvoering van alle vereiste tests in de geïmplementeerde fase en de tijd die nodig is voor het registreren van incidenten na de implementatie.

De volgende poorten zijn standaard beschikbaar:

  • Azure-functie aanroepen: de uitvoering van een Azure-functie activeren en ervoor zorgen dat deze is voltooid. Zie Azure-functietaak voor meer informatie.
  • Query's uitvoeren op Azure Monitor-waarschuwingen: bekijk de geconfigureerde Waarschuwingsregels van Azure Monitor voor actieve waarschuwingen. Zie Azure Monitor-taak voor meer informatie.
  • REST API aanroepen: maak een aanroep naar een REST API en ga door als er een geslaagd antwoord wordt geretourneerd. Zie REST API-taak aanroepen voor meer informatie.
  • Querywerkitems: zorg ervoor dat het aantal overeenkomende werkitems dat wordt geretourneerd door een query binnen een drempelwaarde valt. Zie Query uitvoeren op de taak Werkitems voor meer informatie.
  • Beveiligings- en nalevingsevaluatie: Azure Policy-naleving beoordelen op resources binnen het bereik van een bepaald abonnement en een bepaalde resourcegroep, en eventueel op een specifiek resourceniveau. Zie De Azure Policy nalevingstaak controleren voor meer informatie.

Een schermopname met de standaardpoorten.

U kunt ook uw eigen poorten maken met Marketplace-extensies.

De evaluatieopties die van toepassing zijn op alle poorten zijn:

  • Tijd tussen de herevaluatie van poorten. Het tijdsinterval tussen opeenvolgende evaluaties van de poorten. Bij elk steekproefinterval worden nieuwe aanvragen gelijktijdig naar elke poort verzonden en worden de nieuwe resultaten geëvalueerd. Het wordt aanbevolen dat het steekproefinterval groter is dan de langste typische reactietijd van de geconfigureerde poorten, zodat alle reacties kunnen worden ontvangen voor evaluatie.
  • Time-out waarna poorten mislukken. De maximale evaluatieperiode voor alle poorten. De implementatie wordt geweigerd als de time-out wordt bereikt voordat alle poorten slagen tijdens hetzelfde steekproefinterval.
  • Poorten en goedkeuringen. Selecteer de vereiste uitvoeringsvolgorde voor poorten en goedkeuringen als u beide hebt geconfigureerd. Voor voorwaarden vóór de implementatie is de standaardinstelling om eerst handmatige goedkeuringen (gebruikers) te vragen en daarna poorten te evalueren. Hiermee wordt het systeem opgeslagen van het evalueren van de poortfuncties als de release wordt geweigerd door de gebruiker. Voor voorwaarden na de implementatie is het standaardinstelling om poorten te evalueren en alleen om handmatige goedkeuringen te vragen wanneer alle poorten zijn geslaagd. Dit zorgt ervoor dat de goedkeurders alle informatie hebben die nodig is om goed te keuren.

Zie Goedkeuringslogboeken weergeven en Implementaties bewaken en bijhouden voor meer informatie over gates-analyse.

Voorbeelden van gate-evaluatiestromen

In het volgende diagram ziet u de stroom van de poortevaluatie, waarbij, na de initiële vertragingsperiode en drie steekproefintervallen, de implementatie wordt goedgekeurd.

Een schermopname van het stroomdiagram van de gates-evaluatie.

In het volgende diagram ziet u de stroom van de poortevaluatie, waarbij, na de initiële vertragingsperiode voor stabilisatie, niet alle poorten bij elk steekproefinterval zijn geslaagd. In dit geval wordt de implementatie geweigerd nadat de time-outperiode is verlopen.

Een schermopname met voorbeelden van goedkeuringen en fouten van poorten.

Resources