Dela via


Azure Pipelines – Sprint 230-uppdatering

Funktioner

Azure Pipelines-uppgifter använder Node 16

Uppgifter i pipelinen körs med hjälp av en löpare, där Node.js används i de flesta fall. Azure Pipelines-uppgifter som använder en nod som löpare använder nu alla Node 16. Eftersom Node 16 är den första Node-versionen som har inbyggt stöd för Apple-kisel, slutför detta även fullständigt uppgiftsstöd för macOS på Apple-kisel. Agenter som körs på Apple-kisel behöver inte Rosetta för att köras.

I takt med att slutdatumet för Nod 16 har gått framåt har vi påbörjat arbetet med att köra uppgifter med Node 20.

Meddelande om att inaktuella uppgifter har upphört

Azure Pipelines har många inaktuella uppgifter. Inaktuella uppgifter dras tillbaka den 31 januari 2024. För att hjälpa dig att identifiera pipelines som använder inaktuella uppgifter visar pipelines varningar om en sådan uppgift används. Vi har uppdaterat uppgiftsreferensen för att tydligt förmedla utfasningsstatus och slutdatum.

Följande uppgifter har blivit inaktuella och börjar generera varningar:

  • AppCenterDistributeV1,
  • AppCenterDistributeV2
  • AzureMonitorV0
  • ChefKnifeV1
  • ChefV1
  • CondaEnvironmentV1
  • DeployVisualStudioTestAgentV2
  • DotNetCoreInstallerV1
  • IISWebAppDeployment
  • QuickPerfTestV1
  • RunJMeterLoadTestV1
  • RunLoadTestV1
  • SqlServerDacpacDeploymentV1
  • XamarinTestCloudV1

Uppdatera dina pipelines så att de använder en nyare aktivitetsversion eller ett alternativ före den 31 januari 2024.

AzureRmWebAppDeployment-uppgift stöder Microsoft Entra-ID-autentisering

Uppgifterna AzureRmWebAppDeploymentV3 och AzureRmWebAppDeployment@4 har uppdaterats för att stödja App Service med grundläggande autentisering inaktiverad. Om grundläggande autentisering är inaktiverad i App Service använder AzureRmWebAppDeploymentV3/4-uppgifter Microsoft Entra-ID-autentisering för att utföra distributioner till App Service Kudu-slutpunkten. Detta kräver en nyligen installerad version av msdeploy.exe på agenten, vilket är fallet på windows-2022/windows-latest Hosted agents (se uppgiftsreferens).

Förbättringar av Godkännanden REST API

Vi har förbättrat lokaliseringen av godkännanden som tilldelats en användare genom att inkludera de grupper som användaren tillhör i sökresultaten.

Godkännanden innehåller nu information om pipelinekörningen som de tillhör.

Följande GET REST API-anrop https://dev.azure.com/fabrikam/FabrikamFiber/_apis/pipelines/approvals?api-version=7.2-preview.2&top=1&assignedTo=john@fabrikam.com&state=pending returnerar till exempel

{
    "count": 1,
    "value":
    [
        {
            "id": "7e90b9f7-f3f8-4548-a108-8b80c0fa80e7",
            "steps":
            [],
            "status": "pending",
            "createdOn": "2023-11-09T10:54:37.977Z",
            "lastModifiedOn": "2023-11-09T10:54:37.9775685Z",
            "executionOrder": "anyOrder",
            "minRequiredApprovers": 1,
            "blockedApprovers":
            [],
            "_links":
            {
                "self":
                {
                    "href": "https://dev.azure.com/fabrikam/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/pipelines/approvals/7e80b987-f3fe-4578-a108-8a80c0fb80e7"
                }
            },
            "pipeline":
            {
                "owner":
                {
                    "_links":
                    {
                        "web":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_build/results?buildId=73222930"
                        },
                        "self":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/build/Builds/73222930"
                        }
                    },
                    "id": 73222930,
                    "name": "20231109.1"
                },
                "id": "4597",
                "name": "FabrikamFiber"
            }
        }
    ]
}

Kringgå Godkännanden och kontroller

Godkännanden och kontroller hjälper till att skydda åtkomsten till viktiga resurser, till exempel tjänstanslutningar, lagringsplatser eller agentpooler. Ett vanligt användningsfall är att använda Godkännanden och Kontroller när du distribuerar till produktion, och du vill skydda ARM-tjänstanslutningen.

Anta att du har lagt till följande kontroller på tjänstanslutningen: ett godkännande, en kontorstidskontroll och en Anropa Azure-funktionskontroll (för att framtvinga en fördröjning mellan olika regioner).

Anta nu att du måste göra en snabbkorrigeringsdistribution. Du startar en pipelinekörning, men den fortsätter inte. Den väntar på att de flesta kontrollerna ska slutföras. Du har inte råd att vänta på att godkännandena och kontrollerna ska slutföras.

I den här sprinten har vi gjort det möjligt att kringgå godkännanden och kontroller som körs, så att du kan slutföra snabbkorrigeringen.

Du kan kringgå körningen Godkännanden, Kontorstid, Anropa Azure-funktionen och Anropa REST API-kontroller.

Kringgå ett godkännande.

Screenshot of Bypass an Approval.

Kringgå kontorstidskontroll.

Screenshot of Bypass Business Hours check.

Kringgå anropa Azure-funktionskontroll. Kringgå kontorstidskontroll.

Screenshot of Bypass Invoke Azure Function check.

När en kontroll kringgås kan du se den i kontrollpanelen.

Screenshot of check bypassed.

Du kan bara kringgå en kontroll om du är administratör för den resurs där kontrollerna har definierats.

Stöd för GitHub Enterprise-server i nödvändig mallkontroll

Mallar är en säkerhetsmekanism som gör att du kan styra faser, jobb och steg för pipelines i din organisation.

Med kontrollen Kräv mall kan du framtvinga att en pipeline sträcker sig från en uppsättning godkända mallar innan du får åtkomst till en skyddad resurs, till exempel en agentpool eller tjänstanslutning.

Från och med den här sprinten kan du ange mallar som finns i GitHub Enterprise Server-lagringsplatser.

Screenshot of required YAML template.

Kör om anropa Azure-funktionskontroller

Anta att du distribuerar systemet i flera steg. Innan du distribuerar den andra fasen finns det en godkännande- och en Invoke Azure Function-kontroll som kör en sanitetskontroll på den redan distribuerade delen av systemet.

När du granskar begäran om godkännande ser du att sanity-kontrollen kördes två dagar tidigare. I det här scenariot kanske du känner till en annan distribution som påverkade resultatet av sanity-kontrollen.

Med den här uppdateringen kan du köra kontrollerna Anropa Azure Function och Anropa REST API igen. Den här funktionen är endast tillgänglig för kontroller som lyckades och som inte har några återförsök.

Screenshot of dynamic check.

Kommentar

Du kan bara köra en kontroll igen om du är administratör för den resurs där kontrollerna har definierats.

Nästa steg

Kommentar

Dessa funktioner kommer att distribueras under de kommande två till tre veckorna.

Gå över till Azure DevOps och ta en titt.

Så här ger du feedback

Vi vill gärna höra vad du tycker om de här funktionerna. Använd hjälpmenyn för att rapportera ett problem eller ge ett förslag.

Make a suggestion

Du kan också få råd och dina frågor som besvaras av communityn på Stack Overflow.