Dela via


Förbereda infrastruktur och distribuera program med GitHub Copilot-moderniseringsagenten

GitHub Copilot-moderniseringsagenten stöder infrastrukturetablering, containerisering och distribution. De här kapaciteterna följer samma modell: planskapande → plankörning, som används i hela agenten.

Arbetsflödet består av två faser:

  1. Infrastrukturförberedelse: Generera och etablera Azure-infrastruktur.
  2. Containerisering och distribution: Containerisera och distribuera programmet.

Anmärkning

Dessa två faser är oberoende. Du kan köra dem tillsammans eller använda varje fas separat. Du kan till exempel hoppa över infrastrukturförberedelser om du redan har en etablerad miljö eller förbereda infrastrukturen nu och distribuera senare.

Förutsättningar

  • En Azure-prenumeration: En aktiv Azure-prenumeration för infrastrukturetablering.
  • Modernisera CLI: Följ snabbstarten för att installera och autentisera.

Fas 1: Förberedelse av infrastruktur

Moderniseringsagenten skapar en plan för att etablera Azure-infrastruktur baserat på de indata du anger. Den här funktionen omfattar möjligheten att utforma en Azure-landningszon som är skräddarsydd för ditt program och som omfattar nätverks-, identitets-, styrnings- och säkerhetsgrunder.

Ingångar

Agenten kan använda olika indata för att informera infrastrukturplanen:

  • Programkällans kod: Codebase-analys för att fastställa teknikstacken, beroenden och resurskrav.
  • Utvärderingsrapporter: Rapporter från modernize assess, Azure Migrate eller andra migrerings- och utvärderingsverktyg.
  • Arkitekturdiagram: Arkitekturdiagram före migrering eller designdokument på lagringsplatsen.
  • Efterlevnads- och säkerhetskrav: Organisationsprinciper, säkerhetsstandarder eller riktlinjer för landningszoner som tillhandahålls som dokument på lagringsplatsen eller som naturligt språk i din fråga.

Skapa infrastrukturplanen

Använd modernize plan create med en fråga som beskriver dina infrastrukturbehov:

modernize plan create "help create azure infrastructure for my app" --plan-name infra-setup

Agenten genererar en plan som innehåller en föreslagen Azure-arkitektur och en detaljerad resurslista som ska etableras. Planen omfattar som standard både IaC-filgenerering och resursetablering. Du kan bara begära IaC-filgenerering via din fråga.

Tips/Råd

Kombinera olika input och inställningar i din prompt. Som exempel:

  • "create an Azure landing zone tailored to my application's architecture and requirements"
  • "create azure infrastructure based on the assessment report, following our compliance policies in docs/security-requirements.md"
  • "generate Bicep files for the target architecture in the design doc, don't provision yet"
  • "provision azure resources based on the architecture diagram and assessment findings"

Granska planen

Granska utdatafilerna före körning:

  • Planfil (.github/modernize/infra-setup/plan.md): Infrastrukturstrategi och föreslagen arkitektur.
  • Uppgiftslista (.github/modernize/infra-setup/tasks.json): Specifika uppgifter som agenten utför.

Du kan redigera båda filerna för att justera resurskonfigurationer eller ändra metoden före körning.

Utföra infrastrukturplanen

Utför planen:

modernize plan execute --plan-name infra-setup

Verifiera infrastruktur

Granska den genererade infrastrukturkoden och bekräfta Azure-resurserna via Azure-portalen eller Azure CLI:

git status
git diff main

Fas 2: Containerisering och distribution

Använd en andra plan för att containerisera ditt program och distribuera det.

Anmärkning

Den här fasen kräver programkällans kod som du redan har migrerat eller uppgraderat. Slutför kodmoderniseringen innan du fortsätter med containerisering och distribution.

Skapa distributionsplanen

modernize plan create "containerize and deploy my app to azure, subscription: <sub-id>, resource group: <rg-name>" --plan-name deploy

Du kan containerisera och distribuera tillsammans, eller hantera dem separat med enskilda planer.

  • Containerisering: Genererar en Dockerfile för projektet och validerar byggningen av containeravbildningen.
  • Distribution: Skapar alla nödvändiga konfigurationsfiler och manifest baserat på azure-målvärdtjänsten, distribuerar programmet och genererar ett återanvändbart distributionsskript för framtida användning.

Tips/Råd

Anpassa uppmaningen så att den matchar dina behov:

  • "containerize my app and create dockerfile": endast containerisera, utan att distribuera.
  • "deploy my app to the AKS cluster in subscription: <sub-id>, resource group: <rg-name>": distribuera ett redan containerbaserat program.

Granska planen

Granska de genererade planfilerna:

  • Planfil (.github/modernize/deploy/plan.md): Strategi för containerisering och distribuering.
  • Uppgiftslista (.github/modernize/deploy/tasks.json): Specifika distributionsuppgifter.

Verkställ distributionsplanen

modernize plan execute --plan-name deploy

Verifiera driftsättningen

  1. Granska kodändringar: Kontrollera den genererade Dockerfile, distributionsmanifesten och konfigurationsändringarna.

    git status
    git diff main
    
  2. Verifiera den körande applikationen: Få åtkomst till din distribuerade applikation via URL:en som tillhandahålls av värdtjänsten.

Använda interaktivt läge

Du kan också utföra båda faserna via det interaktiva användargränssnittet genom att köra modernize och välja Skapa moderniseringsplan på menyn.

Nästa steg