Copilot kodgranskningar, GitHub Copilot autofix och Apple Silicon för macOS-pipelineagenter

Den här sprinten släpper vi nya funktioner i förhandsversionen som är utformade för att förbättra kodkvaliteten, säkerheten och byggfunktionerna. Copilot-baserade kodgranskningar för Azure-lagringsplatser (begränsad offentlig förhandsversion) ger AI-assisterade insikter direkt i pull-begäranden, vilket hjälper team att identifiera problem och förbättra koden mer effektivt. GitHub Copilot Autofix för kodgenomsökning (begränsad offentlig förhandsversion) stärker säkerheten ytterligare genom att automatiskt föreslå korrigeringar för identifierade säkerhetsrisker. Dessutom utökar stödet för Apple Silicon (ARM64) för macOS-pipelineagenter (förhandsversion med betala per användning) byggalternativen och möjliggör nativa macOS-arbetsbelastningar med bättre prestanda och flexibilitet. De här förhandsversionsfunktionerna ger dig möjlighet att utforska nästa generations utvecklarproduktivitet och plattformsstöd i Azure DevOps.

Mer information finns i versionsinformation.

GitHub Avancerad säkerhet för Azure DevOps

Azure-tavlor

Azure-pipelines

Azure-lagringsplatser

GitHub Avancerad säkerhet för Azure DevOps

GitHub Copilot Autofix för kodgenomsökning (begränsad offentlig förhandsversion)

GitHub Copilot Autofix är nu tillgängligt i begränsad offentlig förhandsversion för GitHub Advanced Security för Azure DevOps. Copilot Autofix analyserar CodeQL-kodgenomsökningsaviseringar och föreslår riktade kodkorrigeringar, vilket automatiskt skapar en pull-begäran med en korrigering. Utvecklare kan granska den föreslagna korrigeringen och sammanfoga pull-begäran, vilket minskar den tid som ägnas åt att åtgärda säkerhetsproblem.

Copilot Autofix för kodgenomsökning i GitHub Advanced Security för Azure DevOps

Organisationer som är intresserade av att delta kan registrera sig för förhandsversionen och aktivera Copilot autofix för organisationen och lagringsplatserna när de har godkänts.

Mer information finns i Copilot Autofix för kodgenomsökning (förhandsversion).

CodeQL-standardinstallationen har slutförts

Den offentliga förhandsversionen av CodeQL-standardkonfigurationen för kodgenomsökning är nu klar och tillgänglig för alla GitHub Advanced Security för Azure DevOps kunder. Genom att använda standardkonfigurationen för CodeQL kan du aktivera kodgenomsökning för dina lagringsplatser utan någon manuell pipelinekonfiguration. När codeQL har aktiverats genomsöker koden automatiskt med hjälp av Azure-pipelines och visar säkerhetsrisker i dina lagringsplatsaviseringar.

Information om hur du kommer igång finns i Konfigurera kodgenomsökning.

Advanced Security-statuskontroller för pull requests (allmänt tillgänglig)

Avancerade säkerhetsstatuskontroller för pull-begäranden är nu allmänt tillgängliga. Använd de konfigurerbara AdvancedSecurity/NewHighAndCritical principerna och AdvancedSecurity/AllHighAndCritical grenprinciperna för att blockera slutförande av pull-begäranden när aviseringar med hög eller kritisk allvarlighetsgrad identifieras, vilket hjälper ditt team att förhindra att nya säkerhetsrisker når skyddade grenar.

Mer information finns i Konfigurera statuskontroller som grenprinciper.

Åtkomst för Build Identity att visa aviseringar tas bort

Genom att bygga vidare på ändringen som först introducerades i Sprint 269: Skapa identitetsåtkomst som är begränsad för API:er för avancerad säkerhet slutför vi borttagningen av byggidentitetstjänstens behörighet att visa avancerade säkerhetsaviseringar. Den här ändringen lanseras från och med 1 juli 2026 och avslutas den 15 juli 2026.

När utrullningen är klar kan du inte använda tjänstkonton för build för att visa aviseringar om pipeline-gating. Om dina pipelines förlitar sig på kontot för byggtjänsten för att läsa varningar och använda bygggrindar bör ni gå över till statuskontroller för Advanced Security, vilket ger teamet ett inbyggt sätt att blockera slutförandet av pull requests när nya varningar med hög eller kritisk allvarlighetsgrad identifieras.

Nästa steg finns i Konfigurera statuskontroller som grenprinciper. Mer information om bakgrunden till den här ändringen finns i Byggidentiteter kan återigen få åtkomst till att läsa aviseringar i Advanced Security.

Azure-tavlor

Alternativ för att välja kodningsagentmodell

Olika modeller kan ge olika resultat när du använder Copilot kodningsagent med arbetsobjekt, särskilt när du använder anpassade instruktioner eller anpassade agenter.

Nu kan du välja vilken modell kodningsagenten använder när du skapar en pull-begäran från ett arbetsobjekt, vilket ger dig mer kontroll över vad som fungerar bäst för ditt team och din kodbas.

Alternativ för val av kodningsagentmodell i Azure-tavlor

Azure-pipelines

Mer detaljerade krav på kommentar för att köra PR-valideringar från GitHub-repositorier

För att skydda dina pipelines mot obehörig användning kan du kräva kommentarer från teammedlemmar eller deltagare innan valideringen av pull-begäranden påbörjas.

Före den här sprinten tillämpades kommentarskravet på pull-begäranden från både på samma lagringsplats och från förgreningar. Om du bara ville kräva kommentarer från teammedlemmar för pull requests från forkar var det inte möjligt.

När du startar den här sprinten kan du konfigurera kommentarskrav oberoende av källan för pull-begäranden. I följande exempel krävs kommentarer endast för pull-begäranden som kommer från lagringsplatsförgreningar.

Bild som visar bygg-pullbegäranden från förgreningar av lagringsplatsen.

Få åtkomst till Azure DevOps med Microsoft Entra-autentisering

Nu kan du använda den nya Azure DevOps-tjänstanslutningen för att få åtkomst till Azure DevOps med en Microsoft Entra arbetsbelastningsidentitet (tjänstens huvudnamn eller hanterade identitet) i stället för personliga åtkomsttoken (PAT) eller sessionstoken.

Genom att använda Azure DevOps-tjänstanslutningar kan du förbättra pipelinesäkerheten på flera sätt:

  • Lägsta behörighet: Använd begränsade tjänstanslutningsbehörigheter i stället för breda behörigheter för delade build-tjänstkonton
  • PAT-fri autentisering: Eliminera behovet av att skapa, lagra och rotera personliga åtkomsttoken
  • Inga beständiga hemligheter: Använd Microsoft Entra federerade autentiseringsuppgifter i stället för lösenord
  • Spårningslogg: Autentiseringsförsök loggas i Azure DevOps granskningsloggar

Konfigurera en Azure DevOps-tjänstanslutning

För att skapa Azure DevOps tjänstanslutning måste du först lägga till ett huvudnamn för tjänsten eller en hanterad identitet som användare i organisationen och tilldela den behörigheter.

Om du vill skapa tjänstanslutningen väljer du Azure DevOps (förhandsversion):

Skärmbild som visar den nya tjänstanslutningstypen.

och välj tjänsthuvudnamnet eller den hanterade identitet som du precis skapade som den identitet som används:

Skärmbild som visar konfiguration av tjänstanslutning.

Du bör tilldela identiteten de behörigheter den behöver för organisationen. Du kan göra detta genom att följa länken Visa åtkomst i den aktuella organisationen och t.ex. lägga till den i gruppen Läsare i det aktuella projektet.

Skärmbild som visar information om hservice-anslutning

Använda den nya Azure DevOps-tjänstanslutningen

Så här checkar du ut en lagringsplats från en annan organisation:

resources:
  repositories:
  - repository: external-repo
    type: git
    endpoint: my-azdo-connection
    name: 'external-project/external-repo'
    ref: 'refs/heads/main'

steps:
- checkout: self
- checkout: external-repo

Så här refererar du till en YAML-mall från en annan organisation:

resources:
  repositories:
    - repository: templates 
      type: git
      endpoint: my-azdo-connection
      name: 'external-project/external-repo'
      ref: "refs/heads/main"    
      
steps:
- template: azdosc-template.yml@templates

Så här kommer du åt en artefaktfeed med någon av autentiseringsuppgifterna:

- task: NuGetAuthenticate@1
  inputs:
    nuGetServiceConnections: 'my-azdo-connection'

- task: DotNetCoreCLI@2
  inputs:
    command: 'restore'
    projects: '**/*.csproj'

Använda den nya Azure DevOps-tjänstanslutningen i ett skript

Den nya AzureCLI@3 uppgiften kan användas för att komma åt Azure DevOps med Entra-autentisering på flera olika sätt. I samtliga fall konfigurerar du tjänstanslutningen genom att ange connectionType: 'azureDevOps' och tilldela azureDevOpsServiceConnection till en Azure DevOps tjänstanslutning som du skapade:

- task: AzureCLI@3
  inputs:
    connectionType: 'azureDevOps'
    azureDevOpsServiceConnection: 'my-azdo-connection'

Detta skapar en Entra ID autentiserad session med Azure DevOps CLI:

- task: AzureCLI@3
  displayName: Secret-less
  inputs:
    connectionType: 'azureDevOps'
    azureDevOpsServiceConnection: 'my-azdo-connection'
    scriptType: 'pscore'
    scriptLocation: 'inlineScript'
    inlineScript: |
      az devops configure -l

      az devops project list --query "value[].{Name:name, Id:id}" `
                            -o table

      az pipelines pool list --query "[].{Id:id, Name:name}" `
                            -o table

      az rest --method get `
              --url "https://status.dev.azure.com/_apis/status/health?api-version=7.1-preview.1" `
              --resource 499b84ac-1321-427f-aa17-267ca6975798 `
              --query "sort_by(services[?id=='Pipelines'].geographies | [], &name)" `
              -o table

Om du har ett behov av en token, till exempel om du har ett befintligt skript där du använder en PAT eller System.AccessToken infogad i skript, finns det också en metod för att hämta en Entra-åtkomsttoken som kan användas för att komma åt Azure DevOps:

- task: AzureCLI@3
  displayName: Use Entra access token
  inputs:
    connectionType: 'azureDevOps'
    azureDevOpsServiceConnection: 'my-azdo-connection'
    scriptType: 'pscore'
    scriptLocation: 'inlineScript'
    inlineScript: |
      # Get access token for Azure DevOps
      $token = az account get-access-token --resource "499b84ac-1321-427f-aa17-267ca6975798" `
                                           --query "accessToken" `
                                           --output tsv
      
      # Use token in REST API call
      $headers = @{
        Authorization = "Bearer $token"
        "Content-Type" = "application/json"
      }
      
      $body = @{
        name = "Test Build"
      } | ConvertTo-Json
      
      Invoke-RestMethod -Uri "$(System.CollectionUri)$(System.TeamProject)/_apis/build/definitions?api-version=7.1" `
                        -Method POST `
                        -Headers $headers `
                        -Body $body

Mer information

Mer information om hur du konfigurerar Azure DevOps tjänstanslutning finns i dokumentationen.

Apple Silicon för macOS-pipelineagenter (förhandsversion med betala per användning)

Vi gör Apple Silicon macOS-agenter tillgängliga i Azure-pipelines som en offentlig förhandsversion. Från och med Apple Silicon kommer vi att ta med några av de storlekar som finns tillgängliga i GitHub Actions till Azure-pipelines.

Operativsystem Maskinvaruspecifikation Image YAML VM-avbildningsetikett Pool
macOS 26 Standard macOS 26 arm64 macos-26-arm64 GitHub värdbaserade agenter
macOS 26 XLarge macOS 26 arm64 XL macos-26-arm64-xl GitHub värdbaserade agenter

Dessa agenter använder betala per användning-prissättning med en taxa per minut baserad på agentens storlek, se priser.

Om du vill använda de nya agenterna aktiverar du GitHub värdbaserade agenter i faktureringsinställningarna:

Skärmbild som visar hur du aktiverar prissättning enligt användning.

Detta etablerar den nya GitHub värdbaserade agentpoolen som används för betala per användning-agenter.

Använda Apple Silicon-bilder

När den har etablerats kan du använda Apple Silicon-avbildningen macos-26-arm64 så här:

pool:
  name: 'GitHub-hosted Agents'
  vmImage: 'macos-26-arm64'
steps:
- bash: |
    echo Hello from macOS Tahoe arm64
    uname -a
    sw_vers

Och för den ännu kraftfullare macos-26-arm64-xl bilden så här:

pool:
  name: 'GitHub-hosted Agents'
  vmImage: 'macos-26-arm64-xl'
steps:
- bash: |
    echo Hello from XL macOS Tahoe arm64
    uname -a
    hostinfo | grep memory

Övervakning per minutanvändning

Agenter med betalning per användning debiteras per minut. Om du vill övervaka antalet minuter som används kan du visa antalet minuter som används i den uppdaterade analysfliken i GitHub-värdbaserade agentpoolen, så att du kan se hur många minuter som används per projekt, filtrera på avbildningen och öka detaljnivån för agent-SKU och pipeline:

Skärmbild som visar hur du använder analysfliken.

I Azure Cost Management kan du spåra minuter som används och dela upp användningen efter Azure DevOps organisation och projekt:

Skärmbild som visar hur man övervakar kostnader för användning efter förbrukning.

Du kan använda Azure Cost Management stöd för budgetar och aviseringar för att prognostisera och övervaka dina utgifter.

Mer information

Mer information om hur du aktiverar Apple Silicon-agenter och agentspecifikationer finns i dokumentationen om GitHub värdbaserade agenter.

Azure-lagringsplatser

Copilot kodgranskningar för Azure-lagringsplatser (begränsad offentlig förhandsversion)

GitHub Copilot kan nu granska pull-begäranden direkt i Azure-lagringsplatser. När en pull-begäran är klar för granskning kan utvecklare begära en Copilot granskning för att analysera föreslagna ändringar och identifiera potentiella buggar, kodkvalitetsproblem och problem med underhåll.

Feedback tillhandahålls direkt i pull-begäran, vilket hjälper teamen att fånga problem tidigare och förbättra kodkvaliteten innan de slås samman.

Begär en Copilot-kodgranskning i Azure-lagringsplatser

Den här funktionen är tillgänglig via en begränsad offentlig förhandsversion. Organisationer som är intresserade av att delta kan registrera sig för förhandsversionen och aktivera Copilot kodgranskningar för organisationen och lagringsplatserna när de har godkänts.

Aktivera commit-jämförelse på sidan för jämförelse av grenar

Nu kan du söka efter och välja commitar med SHA direkt från versionsväljaren på sidan för grenjämförelse.

Tidigare krävdes det att man manuellt konstruerade en URL för att jämföra incheckningar. Med den nya fliken Commits i versionsväljaren kan du göra jämförelser mellan commits och mellan grenar och commits direkt i användargränssnittet.

Jämförelse av commits på sidan för jämförelse av grenar

Nästa steg

Note

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.

Ge ett förslag

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