Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Met Batch-upgrade kunt u consistente moderniseringsplannen toepassen op meerdere opslagplaatsen tegelijk. In dit artikel leest u hoe u meerdere toepassingen efficiënt kunt upgraden op ondernemingsniveau.
Met behulp van batchupgrade kunt u het volgende doen:
- Upgrade meerdere toepassingen tegelijk met hetzelfde upgradedoel.
- Pas consistente patronen toe met behulp van vergelijkbare upgradepatronen in toepassingen.
- Gebruik parallelle uitvoering wanneer u de taken aan Cloud Coding Agents delegeert.
Batch-upgrade biedt de volgende voordelen:
Consistente uitvoering:
- Gestandaardiseerde benadering: dezelfde moderniseringspatronen toepassen op alle opslagplaatsen.
- Verminderde variabiliteit: Zorg voor consistente upgradepaden voor vergelijkbare toepassingen.
- Herbruikbare strategieën: gebruik organisatiespecifieke vaardigheden in toepassingen.
Schaal en efficiëntie:
- Parallelle verwerking: Gebruik Cloud Coding Agents om meerdere opslagplaatsen tegelijk te verwerken.
- Geautomatiseerde werkstromen: integreren met CI/CD-pijplijnen voor geplande modernisering.
- Tijdbesparing: Verminder de totale moderniseringstijd van weken tot uren.
Vereiste voorwaarden
- De CLI moderniseren.
- Een voltooide batch-evaluatie (aanbevolen maar niet vereist).
- Alle opslagplaatsen gebruiken dezelfde programmeertaal (Java of .NET).
- Toegang tot alle opslagplaatsen die u wilt upgraden.
- GitHub-authenticatie geconfigureerd (
gh auth login).
Belangrijk
Alle opslagplaatsen in een batch-upgrade moeten dezelfde programmeertaal gebruiken. Als een opslagplaats een andere taal gebruikt, markeert de batch-upgrade de opslagplaats als mislukt en slaat deze over.
Opslagplaatsen configureren
De moderniseringsagent ondersteunt meerdere manieren om de opslagplaatsen op te geven die u wilt upgraden:
- Huidige map: Werk het project bij in uw huidige werkmap.
- Handmatige invoer: voer lokale mappaden of externe Git-URL's rechtstreeks in.
- Configuratiebestand voor opslagplaatsen: gebruik een JSON-configuratiebestand waarin alle opslagplaatsen worden vermeld.
Configuratiebestand voor opslagplaats
Voor batchbewerkingen in veel opslagplaatsen maakt u een JSON-configuratiebestand om alle opslagplaatsen weer te geven. Maak het bestand .github/modernize/repos.json bijvoorbeeld in uw werkmap, of geef een aangepast pad op.
Aanbeveling
Voor voorbeelden van opslagplaatsen moet u deze eerst forken en ervoor zorgen dat u beheerdersrechten hebt om de taak te delegeren aan Cloud Coding Agents.
Eenvoudige indeling (matrix van opslagplaatsen):
[
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
},
{
"name": "ZavaSocialFrontEnd",
"url": "https://github.com/Azure-Samples/ZavaSocialFrontEnd"
}
]
Volledige indeling (met vertakking en lokale paden):
{
"repos": [
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git",
"branch": "main"
},
{
"name": "local-project",
"path": "/absolute/path/to/project"
}
]
}
Elke opslagplaatsvermelding ondersteunt de volgende velden:
| Veld | Beschrijving | Verplicht |
|---|---|---|
name |
Een beschrijvende naam voor de opslagplaats (gebruikt in rapporten en dashboards). | Ja |
url |
Git klonen-URL in HTTPS- of SSH-formaat. | Een van url of path |
path |
Absoluut pad naar lokale map. | Een van url of path |
branch |
Vertakking die moet worden uitgecheckt na het klonen. | No |
description |
Leesbare beschrijving. | No |
Aanbeveling
U kunt opslagplaatsen van verschillende organisaties opnemen en verschillende verificatiemethoden gebruiken zolang u toegang hebt.
De moderniseringsagent detecteert het repos.json bestand .github/modernize/repos.json automatisch wanneer u Een configuratiebestand selecteert bij interactieve modus. U kunt ook een aangepast pad opgeven.
De uitvoeringsmodus kiezen
Batch-upgrade ondersteunt twee uitvoeringsmodi en twee interactiemethoden:
Uitvoeringsmodi
Lokale uitvoering
- Geschikt voor: testen, kleinere sets opslagplaatsen (1-5 opslagplaatsen) of wanneer u liever lokaal beheer hebt.
- Hoe het werkt: verwerkt opslagplaatsen sequentieel op uw lokale computer.
- Configuratie vereist: Geen, afgezien van de basisvereisten.
- Ondersteunt: Zowel Git-URL als lokale padopslagplaatsen.
Delegatie van cloudcoderingsagent
- Geschikt voor: Bewerkingen op ondernemingsniveau, grote portfolio's (5+ opslagplaatsen) of parallelle verwerking.
- Hoe het werkt: verzendt taken naar GitHub Cloud Coding Agents voor parallelle uitvoering in de cloud.
- Installatie vereist: MCP-serverconfiguratie in elke opslagplaats (geconfigureerd tijdens de installatie).
- Supports: Alleen opslagplaatsen met GitHub -URL's (github.com). Lokale paden en niet-GitHub providers worden niet ondersteund.
Belangrijk
Opslagplaatsen voor de overdracht van cloud-coderingsagenten moeten GitHub (github.com) opslagplaats-URL's hebben. Opslagplaatsen die zijn opgegeven met lokale paden of worden gehost op niet-GitHub-providers (GitLab, Azure DevOps) worden overgeslagen tijdens clouddelegering. Lokale uitvoering gebruiken voor deze opslagplaatsen.
Aanbeveling
Door repositories parallel te bewerken, kan de delegatie van de cloud coding agent de totale moderniseringstijd van uren tot minuten verkorten.
Interactiemethoden
Interactieve modus (TUI)
- Begeleide ervaring met menu's en prompts.
- Geschikt voor gebruikers die voor het eerst zijn of wanneer u opties wilt bekijken.
- Ondersteunt zowel lokale als clouduitvoering.
Niet-interactieve modus (CLI/zonder grafische interface)
- Opdrachtregel gebaseerd, volledig geautomatiseerd.
- Het meest geschikt voor CI/CD-pijplijnen en automatisering.
- Ondersteunt zowel lokale als clouduitvoering met vlag
--delegate cloud.
Opmerking
U kunt elke uitvoeringsmodus combineren met elke interactiemethode. Voorbeeld:
-
modernize→ upgrade selecteren (interactief, lokaal) -
modernize→ upgraden → delegeren naar cloudagents (interactief, cloud) selecteren -
modernize upgrade "Java 21" --source ./repos.json(niet-interactief, lokaal) -
modernize upgrade "Java 21" --source ./repos.json --delegate cloud(niet-interactief, cloud)
Hoe batch-upgrade werkt
De werkstroom voor batchupgrades:
- Taaldetectie: Hiermee wordt de projecttaal (Java of .NET) automatisch gedetecteerd vanuit de eerste opslagplaats.
- Plan maken: hiermee maakt u een upgradeplan op basis van uw prompt of gebruikt u de nieuwste LTS-versies.
- Uitvoering: De upgrade wordt toegepast op elke opslagplaats.
- Validatie: bouwt en valideert wijzigingen voor elke opslagplaats.
Een batchupgrade uitvoeren
Nadat u uw opslagplaatsen hebt geconfigureerd en een uitvoeringsmodus hebt gekozen, start u de batch-upgrade.
Interactieve modus (lokaal upgraden)
Voer de moderniseringsagent uit:
modernizeSelecteer Upgraden in het hoofdmenu.
Kies hoe u de doelopslagplaatsen opgeeft. Selecteer in een configuratiebestand om een
repos.jsonbestand te gebruiken.Aanbeveling
U kunt ook handmatige invoer selecteren om lokale paden of externe Git-URL's rechtstreeks in te voeren, of de huidige map om het project in uw huidige map te upgraden.
Als het
repos.jsonbestand wordt gedetecteerd op de standaardlocatie, vult de agent het automatisch in. Anders voert u het pad naar het configuratiebestand in en drukt u op Enter.Alle opslagplaatsen zijn standaard geselecteerd. Deselecteer de repositories die u wilt overslaan en druk op Enter om uw selectie te bevestigen.
- Gebruik pijltoetsen om te navigeren en druk op Spatiebalk om afzonderlijke opslagplaatsen in te schakelen.
Kies de uitvoeringsmodus. Selecteer Lokaal upgraden.
Voer de prompt voor het upgradedoel in (bijvoorbeeld
Java 21of.NET 10) of druk op Enter om de standaardwaarde (nieuwste LTS-versie) te accepteren.De agent voert automatisch uit:
- Hiermee maakt u een upgradeplan op basis van uw aanvraag.
- Het plan wordt opeenvolgend toegepast op elke opslagplaats.
- Bouwt en valideert elke opslagplaats na wijzigingen.
- Geeft de voortgang en samenvatting weer voor elke opslagplaats.
Interactieve modus (delegeren aan Cloud Coding Agents)
Vereisten: MCP-server configureren
Voordat u de upgrade uitvoert, configureert u de GitHub Copilot Modernization MCP Server in elke opslagplaats.
Voor Java toepassingen voegt u deze configuratie toe in de sectie Cloud Coding Agent van uw opslagplaatsinstellingen:
{
"mcpServers": {
"app-modernization": {
"type": "local",
"command": "npx",
"tools": [
"*"
],
"args": [
"-y",
"@microsoft/github-copilot-app-modernization-mcp-server"
]
}
}
}
Steps
Voer de moderniseringsagent uit:
modernizeSelecteer Upgraden in het hoofdmenu.
Kies hoe u de doelopslagplaatsen opgeeft. Selecteer een configuratiebestand.
Als het
repos.jsonbestand wordt gedetecteerd op de standaardlocatie, vult de agent het automatisch in. Anders voert u het pad naar het configuratiebestand in en drukt u op Enter.Alle opslagplaatsen zijn standaard geselecteerd. Deselecteer de repositories die u wilt overslaan en druk op Enter om uw selectie te bevestigen. Gebruik pijltoetsen om te navigeren en druk op Spatiebalk om afzonderlijke opslagplaatsen in te schakelen.
Kies de uitvoeringsmodus. Selecteer Delegeren naar cloud-agents.
Voer de prompt voor het upgradedoel in (bijvoorbeeld
Java 21) of druk op Enter om de standaardwaarde te accepteren.De agent voert automatisch uit:
Hiermee maakt u upgradeplannen voor elke opslagplaats.
Verzendt een Cloud Coding Agent-taak voor elke opslagplaats.
Voert taken onafhankelijk parallel uit in de cloud.
Geeft taak-id's en PR-URL's voor elke opslagplaats weer.
Hiermee worden taken gedelegeerd aan AgentHQ voor parallelle uitvoering.
Houdt de voortgang bij voor elke afzonderlijke taak in realtime.
Geeft een upgradeoverzicht weer voor elke voltooide taak.
Niet-interactieve modus (CLI)
Gebruik de modernize upgrade opdracht voor automatisering en CI/CD-integratie:
Voer een upgrade lokaal uit met behulp van een configuratiebestand voor de opslagplaats:
modernize upgrade "Java 21" --source .github/modernize/repos.json
Werk meerdere opslagplaatsen bij door rechtstreeks bronnen op te geven:
modernize upgrade "Java 21" --source https://github.com/org/repo1 --source https://github.com/org/repo2
Upgraden met cloudcoderingsagents:
modernize upgrade "Java 21" --source .github/modernize/repos.json --delegate cloud
Opmerking
Zie de sectie Multi-opslagplaatsconfiguratie in de CLI-opdrachten referentie voor batch niet-interactieve uitvoering en meer CLI-opties.
Resultaten beoordelen
Wanneer de batch-upgrade is voltooid:
Controleer het geaggregeerde rapport dat wordt weergegeven in de terminal.
Wijzigingen in afzonderlijke opslagplaatsen bekijken:
cd <repository-name> git status git diffPull-aanvragen maken voor geslaagde upgrades:
cd <repository-name> gh pr create --title "Upgrade to Java 21" --body "Automated upgrade by modernization agent"
Problemen met batchupgrades oplossen
Veelvoorkomende problemen
Fouten bij toegang tot opslagplaatsen:
- Controleer GitHub verificatie met behulp van
gh auth status. - Zorg ervoor dat u toegang hebt tot alle opslagplaatsen in
repos.json.
Taalafwijkingsfouten:
- Zorg ervoor dat alle opslagplaatsen in
repos.jsondezelfde taal gebruiken (Java of .NET). - Maak afzonderlijke batchbewerkingen voor verschillende talen.
Kloonfouten:
- Controleer of de URL's van de opslagplaats in
repos.jsoncorrect en toegankelijk zijn. - Zorg ervoor dat u over de juiste toegangsmachtigingen voor alle opslagplaatsen beschikt.
- Controleer de netwerkconnectiviteit en VPN-instellingen.
Buildfouten na een upgrade:
- Bekijk buildfoutberichten in het samengevoegde rapport.
- Controleer of u andere afhankelijkheden moet bijwerken.
- Controleer de compatibiliteit van bibliotheken van derden met de nieuwe versie.
Fouten in afzonderlijke opslagplaatsen:
- Het batchproces wordt voortgezet, zelfs als afzonderlijke opslagplaatsen mislukken.
- Bekijk het samengevoegde rapport om mislukte opslagplaatsen te identificeren.
- Controleer de foutenlogboeken op specifieke foutberichten.
- Mislukte opslagplaatsen afzonderlijk opnieuw proberen.
Fouten in Cloud Coding Agent:
- Controleer GitHub Actions machtigingen en quotumlimieten.
- Controleer voor .NET Framework of de Windows-runnerconfiguratie correct is ingesteld.
Volgende stappen
Nadat u de batchupgrade hebt voltooid, kunt u het volgende doen:
Ga verder met verbeteren:
- Batch-evaluatie uitvoeren : wordt opnieuw beoordeeld om verbeteringen te controleren en nieuwe kansen te identificeren.
- Aangepaste vaardigheden maken voor organisatiespecifieke patronen : leg succesvolle patronen vast voor hergebruik.
Meer informatie:
Feedback geven
We waarderen uw invoer! Als u feedback hebt over batchupgrade of de moderniseringsagent, maak dan een probleem op in de github-copilot-appmod-opslagplaats of gebruik de GitHub Copilot feedbackformulier voor modernisering.