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.
Overzicht
Meer informatie over het migreren van .NET toepassingen naar Azure met behulp van de invoegtoepassing GitHub Copilot modernisering in Copilot CLI.
De invoegtoepassing biedt een autonome werkstroom met meerdere agents waarmee uw .NET-toepassing wordt beoordeeld, een uitvoerbaar moderniseringsplan wordt gegenereerd en de migratie wordt uitgevoerd, allemaal vanuit de terminal. Het biedt ondersteuning voor Azure migraties, CVE-beveiligingsproblemen en het opnieuw ontwerpen van toepassingen.
Opmerking
GitHub Copilot CLI is beschikbaar in de plannen GitHub Copilot Pro, GitHub Copilot Pro+, GitHub Copilot Business en GitHub Copilot Enterprise. Als u Copilot ontvangt via een organisatie, moet een beheerder het Copilot CLI-beleid inschakelen in de organisatie-instellingen.
Wat kunt u doen
| Vermogen | Beschrijving |
|---|---|
| .NET migratie naar Azure | .NET toepassingen evalueren en migreren naar Azure services (Service Bus, Azure SQL, Redis, Key Vault, Application Insights, Managed Identity), inclusief NuGet-beveiligingscontroles en ASP.NET-naar-Azure-migraties |
| CVE en beveiligingsproblemen oplossen | CVE-beveiligingsproblemen in NuGet-afhankelijkheden scannen en oplossen |
| Toepassingsherarchitectuur | Ingrijpende herstructureringen zoals het opsplitsen van een monoliet in microservices, het moderniseren van verouderde gebruikersinterfaces en het extraheren van modules |
Vereiste voorwaarden
- Installeer Copilot CLI.
- Een GitHub Copilot-abonnement. Zie Copilot-plannen.
De invoegtoepassing installeren
Voer in een terminal
copilotuit om Copilot CLI te starten.copilotVoeg de marktplaats toe en installeer de plug-in:
copilot plugin marketplace add microsoft/github-copilot-modernization copilot plugin install github-copilot-modernization@github-copilot-modernizationControleer of de plug-in is geïnstalleerd door een lijst van de geïnstalleerde plug-ins weer te geven:
/plugin listU ziet
github-copilot-modernization:modernizein de lijst.
De invoegtoepassing bijwerken
Als u de invoegtoepassing wilt bijwerken wanneer er een nieuwe versie beschikbaar is, voert u het volgende uit:
copilot plugin update github-copilot-modernization@github-copilot-modernization
Een moderniseringstaak starten
Optie 1: Begin rechtstreeks met de agent
Navigeer naar uw .NET projectmap en start Copilot CLI met de moderniseringsagent:
cd /path/to/your/dotnet-project
copilot --agent=github-copilot-modernization:modernize
Optie 2: Selecteer de agent in Copilot CLI
Als u zich al in een Copilot CLI-sessie bevindt, gebruikt u de opdracht /agent om over te schakelen naar de moderniseringsagent:
/agent
Selecteer github-copilot-modernization:modernize in de lijst.
Important
U moet de github-copilot-modernization:modernize agent selecteren voordat u eventuele moderniseringsprompts uitvoert. Zonder deze agent geselecteerd, maakt Copilot CLI gebruik van de standaardagent, die niet de volledige indeling van meerdere agents, ondersteuning voor enterprise playbook en gespecialiseerde migratiemogelijkheden kan gebruiken die de invoegtoepassing biedt.
Een moderniseringsprompt uitvoeren
Zodra de agent actief is, beschrijft u wat u in natuurlijke taal wilt:
copilot> modernize my application
U kunt ook specifieker zijn:
copilot> modernize my .NET application for Azure
copilot> migrate this app from local SQL Server to Azure SQL Database
copilot> fix CVE vulnerabilities in my project
Gebruik de --allow-all vlag voor uitvoering zonder toezicht:
copilot --agent=github-copilot-modernization:modernize --allow-all
Hoe de werkstroom werkt
De invoegtoepassing maakt gebruik van een werkstroom in drie fasen die automatisch wordt uitgevoerd. U hoeft niet elke fase handmatig aan te roepen. De orchestrator verwerkt routering op basis van uw aanvraag.
Fase 1: Evaluatie
- Detecteert .NET projectstructuur en maakt gebruik van de juiste analysehulpprogramma's.
- Analyseert afhankelijkheden, frameworks en versies.
- Identificeert moderniseringsmogelijkheden en risico's.
- Slaat resultaten op in
.github/modernize/assessment/.
Fase 2: Planning
- Laadt evaluatieresultaten en enterprise playbookbeperkingen (indien aanwezig).
- Hiermee wordt een uitvoerbaar taakplan gegenereerd.
- Slaat het plan op naar
.github/modernize/<app>/plan.mdentasks.json.
Fase 3: Uitvoering
- Hiermee worden taken doorgestuurd naar gespecialiseerde uitvoerders op basis van het taaktype.
- Elke executor raadpleegt een kennisbank voor migratiepatronen.
- Bewaakt de voortgang met automatische nieuwe pogingen bij fouten.
- Hiermee maakt u gedetailleerde doorvoeringen per taak voor controle.
De orchestrator ondersteunt meerdere toegangspunten, afhankelijk van uw intentie:
| Workflow | Wanneer deze wordt geactiveerd | Wat gebeurt er? |
|---|---|---|
| Brede intentie | "Mijn toepassing moderniseren" | Volledig beoordelen → plannen → pipeline uitvoeren |
| Specifieke taak | "Migreren van SQL Server naar Azure SQL" | Slaat de evaluatie over, gaat direct naar het plannen → uitvoeren |
| Bestaand plan uitvoeren | "het plan uitvoeren" | Slaat evaluatie en planning over, voert een bestaand plan uit |
| Headless | Uitvoering zonder toezicht met --allow-all |
Hetzelfde als een brede intentie zonder gebruikersprompts |
Moderniseringsbeleid voor ondernemingen definiëren
Organisaties kunnen hun moderniseringsintentie( doelarchitecturen, upgradestandaarden en nalevingsbeleid) rechtstreeks in de werkstroom insluiten via een playbook. Deze aanpak zorgt ervoor dat elk gegenereerd plan overeenkomt met bedrijfsstandaarden zonder dat elke beslissing handmatig wordt gecontroleerd.
Een draaiboek instellen
Plaats Markdown-bestanden in de .github/modernize/playbook/ map van uw project. In de planningsfase worden automatisch alle .md bestanden in deze map gelezen en samengevoegd met evaluatieresultaten voordat het taakplan wordt gegenereerd.
Important
Beperkingen van het playbook hebben voorrang op aanbevelingen van de beoordeling. Als uw playbook 'gebruik Azure Service Bus voor berichten' aangeeft, heeft die keuze voorrang, ongeacht wat de evaluatie detecteert.
Wat u in een playbook kunt definiëren
| Beleidstype | Examples |
|---|---|
| Doelarchitecturen | Compute-services (App Service, AKS, Container Apps), databasekeuzen (Azure SQL, Cosmos DB), berichtenplatforms (Service Bus, Event Hubs) |
| Upgradenormen | Doelversie .NET, frameworkmigratiepaden |
| Veiligheidshekken | Verboden technologieën, beveiligingsvereisten, nalevingsbeperkingen, verificatiestandaarden |
| Coderingsstandaarden | Naamconventies, verificatiepatronen, frameworks voor logboekregistratie |
| Migratiestrategie | Bereikgrenzen, 6R-classificatievoorkeuren (rehost versus refactor vs. rearchitect), faseringsstrategie |
Voorbeeld-draaiboek
Maak een bestand op .github/modernize/playbook/enterprise-standards.md:
# Enterprise Modernization Standards
## Target Architecture
- Use Azure Container Apps for microservices deployments
- Use Azure Service Bus for all asynchronous messaging
- Use Azure SQL Database for relational data
- Use Azure Blob Storage for file storage
## Security & Compliance
- All services must authenticate using Managed Identity — no connection strings or passwords in code
- All public endpoints must be behind Azure Front Door
## Guardrails
- Do not use Azure Functions for long-running processes
- All infrastructure must be defined in Bicep
Er is geen vaste naamgeving of structuur vereist. De orchestrator leidt het doel van elk bestand af van de inhoud ervan.
Ingebouwde standaardinstellingen
Zonder een playbook past de invoegtoepassing verstandige standaardwaarden toe:
- Azure: Beheerde identiteit voor verificatie; beheerde databaseservices voor relationele gegevens.
- Messaging: on-premises messaging → Azure Service Bus.
- Infrastructure: Bicep als standaard.
Algemene scenario's
Azure migratie
copilot --agent=github-copilot-modernization:modernize
copilot> modernize my .NET application for Azure
Migreren van lokale SQL Server naar Azure SQL
copilot --agent=github-copilot-modernization:modernize
copilot> migrate this app from local SQL Server to Azure SQL Database with managed identity
Migreren van bestands-I/O naar Azure Blob Storage
copilot --agent=github-copilot-modernization:modernize
copilot> migrate this app from local file I/O to Azure Blob Storage
CVE en beveiligingsoplossing
copilot --agent=github-copilot-modernization:modernize
copilot> fix CVE vulnerabilities in my project
Toepassingsherarchitectuur
copilot --agent=github-copilot-modernization:modernize
copilot> rearchitect my monolithic application into microservices
Volledige modernisering
copilot --agent=github-copilot-modernization:modernize
copilot> modernize my application
Troubleshooting
Invoegtoepassing is niet gevonden
# Verify marketplace is added
copilot plugin marketplace list
# Re-add marketplace if needed
copilot plugin marketplace add microsoft/github-copilot-modernization
# Reinstall
copilot plugin install github-copilot-modernization@github-copilot-modernization
Evaluatie mislukt: er is geen toepassing gevonden
- Controleer of de hoofdmap van uw project een
.csprojof.slnbestand bevat. - Zorg ervoor dat u zich in de juiste map bevindt voordat u Copilot CLI start.
Problemen met MCP-server
De invoegtoepassing maakt gebruik van de MCP-server die is gedefinieerd in de configuratie. Als u problemen ondervindt, installeert u de invoegtoepassing opnieuw om de MCP-configuratie opnieuw in te stellen.
Feedback geven
Deel feedback over GitHub Copilot CLI met behulp van het GitHub Copilot CLI-feedbackformulier.