Delen via


Verbeteringen in het kopiëren van dashboards

We zijn verheugd om enkele langverwachte verbeteringen aan te kondigen in de preview-versie van Het dashboard kopiëren. U kunt nu een dashboard kopiëren naar een ander team, hetzelfde team of een ander project. De team- en queryconfiguratie wordt bijgewerkt in het nieuwe dashboard. Dit minimaliseert het werk dat nodig is voor het bouwen van vergelijkbare dashboards voor meerdere teams.

Bekijk de volgende functiebeschrijvingen voor meer informatie.

Algemeen

Azure Pipelines

Rapporten

Algemeen

De rol Azure DevOps-beheerder toewijzen aan een Azure AD groep

De rol Azure DevOps-beheerder, die nodig is voor het configureren van Azure AD tenantbeleid in Azure DevOps, kan nu worden toegewezen aan een Azure AD groepen. Meer informatie over het gebruik van Azure AD groepen voor het beheren van roltoewijzingen in Azure AD.

Azure Pipelines

Automatische nieuwe pogingen voor een taak

Wanneer u een onregelmatige taak hebt die af en toe mislukt in een pijplijn, moet u de pijplijn mogelijk opnieuw uitvoeren om deze te laten slagen. In de meeste gevallen kunt u een taak of script het beste oplossen door de taak of het script zelf op te lossen. Als uw testtaak bijvoorbeeld mislukt in een pijplijn vanwege vlokige tests, is het altijd een goed idee om de vlokige tests te herstellen en ze betrouwbaarder te maken. Als uw script af en toe mislukt, is het ook beter om het script te herstellen, bijvoorbeeld door nieuwe pogingen in het script te introduceren.

Er zijn echter enkele gevallen waarin u de taak mogelijk opnieuw wilt uitvoeren. Een veelvoorkomend gebruiksvoorbeeld hiervoor is een taak waarmee een pakket wordt gedownload (bijvoorbeeld NuGet, npm, enzovoort). We hebben vaak vastgesteld dat deze taken vatbaar zijn voor netwerkfouten en voor tijdelijke storingen op de pakkethostingservers. We hebben uw feedback gehoord dat het beter zou zijn om dergelijke mislukte taken automatisch opnieuw uit te voeren zonder de hele pijplijn opnieuw te hoeven starten.

Op basis van uw feedback hebben we een functie toegevoegd waarmee een taak in een pijplijn automatisch opnieuw wordt geprobeerd wanneer deze mislukt. Als u YAML-pijplijnen gebruikt, kunt u deze invoer als volgt instellen:

- task: <name of task>
   retryCountOnTaskFailure: <max number of retries>
   ...

Wanneer u klassieke build- of release-pijplijnen gebruikt, kunt u deze eigenschap instellen onder de besturingsopties voor de taak.

Hier volgen enkele aandachtspunten bij het gebruik van nieuwe pogingen:

  • De mislukte taak wordt onmiddellijk opnieuw geprobeerd.
  • Er is geen veronderstelling over de idempotentie van de taak. Als de taak neveneffecten heeft (bijvoorbeeld als er gedeeltelijk een externe resource is gemaakt), kan de tweede keer dat de taak wordt uitgevoerd, mislukken.
  • Er is geen informatie over het aantal nieuwe pogingen beschikbaar gemaakt voor de taak.
  • Er wordt een waarschuwing toegevoegd aan de taaklogboeken die aangeeft dat het is mislukt voordat het opnieuw wordt geprobeerd.
  • Alle pogingen om een taak opnieuw uit te voeren, worden weergegeven in de gebruikersinterface als onderdeel van hetzelfde taakknooppunt.

Notitie

Agentversie 2.194.0 of hoger vereist. Niet ondersteund voor taken zonder agent.

Invoer van een andere taak in een decorator gebruiken

We hebben onlangs een functie toegevoegd om een taak automatisch in een pijplijn te injecteren vóór een andere doeltaak in die pijplijn. We verbeteren deze functie nu door u de geïnjecteerde taak aan te passen met behulp van de invoerparameters van de doeltaak. De syntaxis voor het schrijven van een decorator om dit te doen is als volgt:

{
    "contributions": [
        {
            "id": <my-required-task>,
            "type": "ms.azure-pipelines.pipeline-decorator",
            "targets": [
                "ms.azure-pipelines-agent-job.pre-task-tasks",
                "ms.azure-pipelines-agent-job.post-task-tasks"
            ],
            "properties": {
                "template": "my-decorator.yml",
                "targettask": <target-task-id>,
                "targettaskinputs": ["<name of input>"]
            }
        }
    ],
    ...
}

Deze functie werkt alleen wanneer u pre-task-tasks of post-task-tasks gebruikt als het doel voor injectie en opgeeft targettask in de eigenschappensectie van de bijdrage. U kunt vervolgens een extra eigenschap met de naam targettaskinputs toevoegen en een lijst met namen van invoerparameters opgeven die door de doeltaak worden geaccepteerd. Deze invoer is nu beschikbaar voor de geïnjecteerde taak.

Een veelvoorkomend gebruiksscenario dat door een dergelijk scenario kan worden bereikt, is als volgt. Stel dat u een taak wilt injecteren waarmee automatisch de naam wordt ingehouden van het artefact dat door een build wordt gepubliceerd. De naam van het artefact is een invoer voor de PublishBuildArtifacts taak. Uw geïnjecteerde taak kan nu dezelfde invoerparameter krijgen en deze gebruiken voor logboekregistratie.

Verbeteringen in de gebruiksgeschiedenis van serviceverbindingen

Wanneer een pijplijn gebruikmaakt van een serviceverbinding, wordt dat gebruik vastgelegd in de geschiedenis van de verbinding. Beheerders van de serviceverbinding kunnen de gebruiksgeschiedenis controleren door naar projectinstellingen te navigeren en de juiste serviceverbinding te selecteren. Er zijn enkele problemen met de gebruiksgeschiedenis van serviceverbindingen die zijn opgelost met deze update. Oplossingen zijn onder andere:

  • Wanneer een serviceverbinding wordt gebruikt in een implementatietaak (in plaats van een normale taak), werd dat gebruik niet geregistreerd.
  • Als u meerdere serviceverbindingen in meerdere fasen van een pijplijn hebt gebruikt, wordt voor alle serviceverbindingen een record weergegeven in de gebruiksgeschiedenis, ook al zijn sommige fasen overgeslagen.

De standaardagentspecificatie voor klassieke pijplijnen is nu Windows-2019

In de laatste opmerkingen bij de release hebben we een afschaffingsschema voor vs2017-win2016 gehoste installatiekopieën aangekondigd. Ter voorbereiding daarop wijzigen we nu de standaardagentspecificatie bij het maken van nieuwe pijplijnen in klassieke pijplijnen windows-2019in .

Agentspecificatie

Rapporten

Verbeteringen in dashboard kopiëren

Met trots kondigen we de openbare preview van fase 2 van Dashboard kopiëren aan! Query's en configuratie worden nu meegenomen met de kopieerbewerking. Bedankt voor uw geduld, want het duurde iets langer dan verwacht om een aantal van de problemen uit te werken.

Het voorbeeld is standaard ingeschakeld met de functievlag Dashboardervaring kopiëren (onder preview-functies).

Als u een dashboard wilt kopiëren, gaat u eerst naar het dashboard dat u wilt kopiëren. Klik vervolgens op het menu om Dashboard kopiëren weer te geven en klik erop.

Dashboard kopiëren

Geef vervolgens de naam en beschrijving van het nieuwe dashboard op en selecteer vervolgens het dashboardtype Team of Project. Wanneer u een teamdashboard selecteert, worden het nieuwe project en het nieuwe team geselecteerd in de desbetreffende vervolgkeuzelijsten. Voor een Project-dashboard is alleen het project vereist.

Nieuw dashboard

U wordt naar het zojuist gemaakte dashboard gebracht nadat u op de knop Maken hebt geklikt. De widgets en indeling blijven hetzelfde.

Achter de schermen wordt een map met de naam van het nieuwe dashboard gemaakt in Gedeelde query's. Alle query's voor het nieuwe dashboard worden naar die map gekopieerd. Querynamen blijven hetzelfde. Widgets met een teamconfiguratie worden bijgewerkt met het nieuwe team. Widgets met een teamconfiguratie die van een teamdashboard naar een projectdashboard worden gekopieerd, behouden de oorspronkelijke configuratie.

Filteren op null-waarden in burndowngrafiekwidget

U kunt nu filteren op een null-waarde wanneer u Veldcriteria gebruikt in de widget burndowngrafiek. Dit gedrag is nu consistent met een query die dezelfde veldcriteria gebruikt.

Configuratie van veldcriteria

Volgende stappen

Notitie

Deze functies worden in de komende twee tot drie weken uitgerold.

Ga naar Azure DevOps en neem een kijkje.

Feedback geven

We horen graag wat u van deze functies vindt. Gebruik het menu Help om een probleem te melden of een suggestie te geven.

Een suggestie doen

U kunt ook advies krijgen en uw vragen worden beantwoord door de community op Stack Overflow.

Met vriendelijke groet,

Aaron Hallberg