Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med Batch-utvärdering kan du analysera flera program samtidigt, vilket ger en omfattande vy över moderniseringslandskapet i dina program. Den här artikeln vägleder dig genom processen att utvärdera flera lagringsplatser effektivt.
Batchutvärdering är särskilt värdefull för migreringsplanering eftersom du på ett effektivt sätt kan utvärdera beredskapen och kraven för olika program samtidigt. Genom att använda batchutvärdering kan du utvärdera olika lagringsplatser samtidigt och få detaljerade utvärderingsrapporter för varje program. Den skapar två typer av rapporter som stöder migreringsplaneringen:
- Per apprapport: Ger detaljerade insikter om alla moderniseringsproblem som identifierats på enskild lagringsplatsnivå.
- Aggregated report: Presenterar ett övergripande perspektiv på alla utvärderade program, med sammanfattningsinsikter, rekommendationer om Azure tjänster, målplattformar och uppgraderingsvägar. Dessutom innehåller den aggregerade rapporten genvägar för enkel åtkomst till varje apprapport.
Batch-utvärdering ger följande fördelar:
Synlighet mellan program:
- Sammanställda rapporter: Få en omfattande vy över program.
- Analys mellan lagringsplatser: Identifiera vanliga mönster och beroenden mellan program.
- Prioriteringsinsikter: Förstå vilka program som behöver omedelbar uppmärksamhet.
Skala och effektivitet:
- Parallell bearbetning: Använd molnkodningsagenter för att bearbeta flera lagringsplatser samtidigt.
- Automatiserade arbetsflöden: Integrera med CI/CD-pipelines för schemalagd utvärdering.
- Tidsbesparingar: Minska den totala utvärderingstiden från veckor till timmar.
Förutsättningar
- Modernisera CLI.
- Åtkomst till alla lagringsplatser som du vill utvärdera.
- GitHub autentisering har konfigurerats (
gh auth login).
Konfigurera lagringsplatser
Moderniseringsagenten har stöd för flera sätt att ange de lagringsplatser som du vill utvärdera:
- Aktuell mapp: Utvärdera projektet i den aktuella arbetskatalogen.
- Manuell inmatning: Ange lokala katalogsökvägar eller git-fjärr-URL:er direkt.
- Databaskonfigurationsfil: Använd en JSON-konfigurationsfil som visar alla lagringsplatser.
Databaskonfigurationsfil
För batchåtgärder över många lagringsplatser skapar du en JSON-konfigurationsfil för att visa en lista över alla lagringsplatser. Du kan till exempel skapa det .github/modernize/repos.json i din arbetskatalog eller ange en anpassad sökväg.
Kontrollera att du har rätt behörigheter för lagringsplatserna eller förgrena dem.
Enkelt format (matris med lagringsplatser):
[
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
},
{
"name": "PhotoAlbum",
"url": "https://github.com/Azure-Samples/PhotoAlbum.git"
},
{
"name": "eShopOnWeb",
"url": "https://github.com/dotnet-architecture/eShopOnWeb.git"
}
]
Fullständigt format (med gren- och lokala sökvägar):
{
"repos": [
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git",
"branch": "main"
},
{
"name": "local-project",
"path": "/absolute/path/to/project"
}
]
}
Varje lagringsplatspost stöder följande fält:
| Fält | Beskrivning | Obligatoriskt |
|---|---|---|
name |
Ett eget namn för lagringsplatsen (används i rapporter och instrumentpaneler). | Ja |
url |
Git-klon-URL i HTTPS- eller SSH-format. | En av url eller path |
path |
Absolut lokal katalogsökväg. | En av url eller path |
branch |
Förgrena för att checka ut efter kloning. | No |
description |
Beskrivning som kan läsas av människor. | No |
Fullständigt format med appgruppering (valfritt, för organiserad rapportering):
Du kan lägga till ett apps[] avsnitt för att gruppera lagringsplatser i logiska program. När appar definieras ordnar den aggregerade rapporten resultat efter program och stöder rapportdistribution till externa mål.
{
"repos": [
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git",
"branch": "main"
},
{
"name": "PhotoAlbum",
"url": "https://github.com/Azure-Samples/PhotoAlbum.git"
}
],
"apps": [
{
"identifier": "photo-app",
"description": "Photo management application",
"repos": ["PhotoAlbum-Java"],
"output": {
"type": "local",
"path": "/path/to/reports/photo-app"
}
}
]
}
Varje app-inlägg stödjer:
| Fält | Beskrivning | Obligatoriskt |
|---|---|---|
identifier |
Unikt visningsnamn för programmet. | Ja |
description |
Beskrivning som kan läsas av människor. | No |
repos |
Lista över lagringsplatsnamn som tillhör den här appen. | Ja |
output |
Var appens utvärderingsrapport ska distribueras efter generering. | No |
Fältet output stöder följande distributionstyper:
| Type | Beskrivning | Obligatoriska fält |
|---|---|---|
local |
Kopiera rapporter till en lokal katalog. | path |
git |
Skicka rapporter till en Git-lagringsplats. URL-formatet är https://github.com/org/repo.git#branch:path. |
url |
Tips/Råd
Du kan inkludera lagringsplatser från olika organisationer och använda olika autentiseringsmetoder så länge du har åtkomst.
Moderniseringsagenten identifierar automatiskt repos.json-filen vid .github/modernize/repos.json när du väljer Från en konfigfil i interaktivt läge. Du kan också ange en anpassad sökväg.
Köra batchutvärdering
Två körningslägen är tillgängliga:
- Lokal körning: Moderniseringsagenten bearbetar lagringsplatser en efter en på den lokala datorn. Det här läget fungerar bäst för en mindre uppsättning program eller för inledande testning. Stöder både Git-URL:er och lokala sökvägslagringsplatser.
- Cloud Coding Agent-delegering: Moderniseringsagenten skickar uppgifter till GitHub Molnkodningsagenter för parallell bearbetning i molnet. Det här läget är snabbare för flerepo-scenarier.
Viktigt!
Cloud Coding Agent-delegering kräver att lagringsplatser har url:er för GitHub (github.com) lagringsplats. Lokala sökvägslagringsplatser och icke-GitHub providers (GitLab, Azure DevOps) stöds inte för molndelegering. Använd lokal exekvering för dessa lagringsplatser.
Tips/Råd
Genom att använda Cloud Coding Agent-delegering aktiverar du parallell körning över alla lagringsplatser. Den här metoden minskar avsevärt den totala utvärderingstiden för stora portföljer.
Interaktivt läge (utvärdera lokalt)
Kör moderniseringsagenten:
modernizeVälj Utvärdera på huvudmenyn.
Välj hur du vill ange dina mållagringsplatser. Välj Från en konfigurationsfil för att använda en
repos.jsonfil.Tips/Råd
Du kan också välja Manuella indata för att ange lokala sökvägar eller fjärranslutna Git-URL:er direkt, eller Aktuell mapp för att utvärdera projektet i den aktuella katalogen.
repos.jsonOm filen identifieras på standardplatsen fyller agenten automatiskt i den. Annars anger du sökvägen till konfigurationsfilen och trycker på Retur.Alla lagringsplatser är markerade som standard. Avmarkera alla lagringsplatser som du vill hoppa över och tryck sedan på Retur för att bekräfta ditt val.
- Använd piltangenterna för att navigera och tryck på Blanksteg för att växla enskilda lagringsutrymmen.
Välj körningsläge. Välj Utvärdera lokalt.
Välj de utvärderingsdomäner som ska analyseras. Välj mellan Java uppgradering och Molnberedskap och tryck sedan på Enter.
Granska och konfigurera utvärderingsalternativen. På konfigurationssidan visas alternativ grupperade efter språk och domän:
- Java/GENERAL: Analystäckning (endast problem, problem och teknologier, eller problem, teknologier och beroenden).
- Java/JAVA UPGRADE: Target Runtime (OpenJDK 11, 17 eller 21).
- Java / CLOUD READINESS: Target Compute Services, Target Operating System och Containerisering.
- .NET/CLOUD READINESS: Target Compute Services.
Använd piltangenterna för att navigera, tryck på Retur för att ändra ett värde eller välj Fortsätt för att fortsätta med de aktuella inställningarna.
Tips/Råd
De rekommenderade standardvärdena fungerar för de flesta scenarier. Du behöver bara ändra de här inställningarna om du har specifika krav, till exempel att rikta in dig på en viss JDK-version eller Azure beräkningstjänst.
Ange utdatasökvägen för utvärderingsresultat eller tryck på Retur för att acceptera standardvärdet.
Agenten utför automatiskt följande:
När utvärderingen är klar öppnar agenten automatiskt den aggregerade rapporten.
Interaktivt läge (delegera till molnkodningsagenter)
Konfigurera först Molnkodningsagenter på varje programlagringsplats. För att konfigurera Molnkodningsagenter förgrenar du exempellagringsplatserna.
Konfiguration för .NET program
Konfigurera för att köras på Windows för .NET Framework-program
Som standard körs Copilot Coding Agent i en Ubuntu Linux-miljö. För .NET Framework-program behöver du en Windows miljö. Om du vill aktivera den konfigurerar du .github/workflows/copilot-setup-steps.yaml i grenen main av programlagringsplatsen enligt följande exempel:
# Windows-based Copilot Setup Steps for .NET tasks
# Note: Windows runners have firewall limitations that may affect some network operations
# Use this workflow for .NET projects that require Windows-specific tooling
name: "Copilot Setup Step (Windows)"
on:
workflow_dispatch:
jobs:
copilot-setup-steps:
runs-on: windows-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v5
Läs mer från: Anpassa Copilot utvecklingsmiljö med Copilot installationssteg
Inaktivera brandvägg
Inaktivera Copilot kodningsagentens integrerade brandvägg i lagringsplatsens inställningar enligt följande bild:
Konfiguration för Java program
Konfigurera GitHub Copilot Modernization MCP Server i avsnittet Cloud Coding Agent i förvaringsinställningarna enligt följande exempel:
{
"mcpServers": {
"app-modernization": {
"type": "local",
"command": "npx",
"tools": [
"*"
],
"args": [
"-y",
"@microsoft/github-copilot-app-modernization-mcp-server"
]
}
}
}
Instruktioner
Kör moderniseringsagenten:
modernizeVälj Utvärdera på huvudmenyn.
Välj hur du vill ange dina mållagringsplatser. Välj Från en konfigurationsfil om du vill använda en
repos.json-fil eller välj Manual input för att ange GitHub lagringsplats-URL:er direkt.Om du har valt Från en konfigurationsfil och
repos.jsonfilen identifieras på standardplatsen fyller agenten automatiskt i den. Annars anger du sökvägen till konfigurationsfilen och trycker på Retur.Alla lagringsplatser är markerade som standard. Avmarkera alla lagringsplatser som du vill hoppa över och tryck sedan på Retur för att bekräfta ditt val.
- Använd piltangenterna för att navigera och tryck på Blanksteg för att växla enskilda lagringsutrymmen.
Välj körningsläge. Välj Delegera till molnagenter.
Anmärkning
När du delegerar till Molnkodningsagenter stöds inte konfigurationsstegen för domänval och utvärdering. Molnagenten använder standardkonfigurationerna för att köra utvärderingen.
Ange utdatasökvägen för utvärderingsresultat eller tryck på Retur för att acceptera standardvärdet.
Agenten delegerar automatiskt utvärderingsuppgifter för varje lagringsplats till Molnkodningsagenter och kör dem parallellt i molnet.
Agenten hämtar utvärderingsresultaten per app tillbaka till lokalt och genererar den aggregerade rapporten lokalt.
När utvärderingen är klar öppnar agenten automatiskt den aggregerade rapporten.
Icke-interaktivt läge (CLI)
Du kan också använda icke-interaktivt läge genom att ange kommandoargument direkt. Använd kommandot modernize assess:
Utvärdera lokalt med hjälp av en databaskonfigurationsfil:
modernize assess --source .github/modernize/repos.json
Utvärdera flera lagringsplatser genom att ange källor direkt:
modernize assess --source https://github.com/org/repo1 --source https://github.com/org/repo2
Utvärdera genom att delegera till molnkodningsagenter:
modernize assess --source .github/modernize/repos.json --delegate cloud --wait
Mer information finns i utvärdera – CLI-kommandon.
Förstå den aggregerade rapporten
Den aggregerade rapporten ger en omfattande vy över utvärderade program på följande sätt:
Dashboard
- Ögonblicksbild av portföljhälsa: totalt antal appar, hur många som behöver uppgraderingar och antal aggregerade blockeringar och problem.
- Teknikdistribution: vilka ramverk som används och hur många appar som delar dem.
- Insatsfördelning: om migreringen i sin helhet är ett litet eller stort åtagande.
Recommendations
- Azure Services: mappar aktuella beroenden till rekommenderade Azure motsvarigheter. Delade beroenden mellan appar bestäms en gång, så du undviker omarbete per app.
- Målplattform: vägleder valet av plattform, till exempel Azure Container Apps jämfört med AKS, och lyfter fram konsolideringsmöjligheter.
- Uppgraderingssökväg: identifierar vilka appar som behöver ramverksuppgraderingar som en förutsättning, vilket skiljer uppgraderingsarbetet från migreringsarbetet.
- Migreringsvågor: ordnar appar efter beredskap och risk i faser. Den här metoden möjliggör tidiga vinster medan svårare appar förbereds parallellt.
Matris för programutvärdering
- Snabböversikt för varje program avseende ramverk, målplattform, uppgraderingsrekommendation, problemuppdelning (obligatorisk, potentiell, valfri), ansträngningsbedömning och mer.
- Länkar till enskilda apprapporter för ökad detaljnivå när det behövs.
Felsökning av batchutvärdering
Vanliga problem
Fel vid åtkomst till lagringsplats:
- Verifiera GitHub autentisering med hjälp av
gh auth status. - Kontrollera att du har åtkomst till alla lagringsplatser som anges i
repos.json.
Klonfel:
- Kontrollera att url:erna för lagringsplatsen är
repos.jsonkorrekta och tillgängliga. - Kontrollera att du har rätt åtkomstbehörigheter för alla lagringsplatser.
- Kontrollera nätverksanslutningen och VPN-inställningarna.
Utvärderingsfel:
- Kontrollera om lagringsplatsen innehåller giltiga Java eller .NET projekt.
- Kontrollera att det finns byggfiler, till exempel
pom.xml,build.gradle,*.csproj,*.slneller*.slnx. - Granska felmeddelanden i konsolens utdata.
Problem med delegering av molnkodningsagent:
- Kontrollera att du har rätt behörigheter för att skapa GitHub Actions arbetsflöden.
- Kontrollera GitHub Actions behörigheter och kvotgränser för din organisation.
- För .NET Framework-appar kontrollerar du att Windows runner-konfigurationen är korrekt inställd.
- Kontrollera mcp-serverkonfigurationen.
Nästa steg
När du har slutfört batchutvärderingen kan du:
Fortsätt moderniseringsarbetsflödet:
- Kör batchuppgradering mellan lagringsplatser – Tillämpa konsekventa uppgraderingar baserat på utvärderingsresultat.
Läs mer:
Lämna feedback
Vi värdesätter dina indata! Om du har feedback om batchutvärdering eller moderniseringsagenten skapa ett problem på github-copilot-appmod-lagringsplatsen eller använd GitHub Copilot formuläret för moderniseringsfeedback.