Batchplan med moderniseringsagenten GitHub Copilot

Med Batch-planen kan du skapa moderniseringsplaner för flera lagringsplatser med hjälp av ett arbetsflöde och ett gemensamt moderniseringsmål. Den här artikeln visar hur du skapar konsekventa planer för flera program innan du börjar köra.

Genom att använda batchplan kan du:

  • Skapa planer för flera program i ett guidat arbetsflöde.
  • Tillämpa ett konsekvent moderniseringsmål mellan lagringsplatser.
  • Använd utvärderingsresultat som kontext för att förbättra planens kvalitet.
  • Granska planerna före körningen och bestäm vilka lagringsplatser som ska moderniseras först.

Batch-planen ger följande fördelar:

  • Konsekvens och kontroll:

    • Gemensam intention: Utgå från en moderniseringsuppmaning över flera kodförråd.
    • Jämförbara utdata: Granska planer sida vid sida innan du kör dem.
    • Flexibel förfining: Redigera varje genererad plan för att återspegla lagringsplatsspecifika behov.
  • Planera i stor skala:

    • Synlighet för portfölj: Förstå hur samma begäran gäller för alla program.
    • Återanvändbar förberedelse: Återanvänd samma lagringsplatslista och utvärderingsutdata från tidigare faser.
    • Snabbare beslutsfattande: Generera planer först och kör sedan bara de lagringsplatser som du godkänner.

Förutsättningar

  • Modernisera CLI.
  • Åtkomst till alla lagringsplatser som du vill planera.
  • GitHub-autentisering konfigurerad (gh auth login).
  • En slutförd batchutvärdering (rekommenderas) om du vill att agenten ska använda utvärderingsresultat som planeringskontext.

Tips/Råd

Batchutvärdering krävs inte, men det ger vanligtvis mer exakta och åtgärdsbara planer eftersom agenten kan referera till identifierade problem och migreringsmöjligheter.

Konfigurera lagringsplatser

Moderniseringsagenten har stöd för flera sätt att ange de lagringsplatser som du vill planera:

  • Aktuell mapp: Skapa en plan för 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.

Format (matris med lagringsplatser):

[
    {
        "name": "PhotoAlbum-Java",
        "url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
    },
    {
        "name": "PhotoAlbum",
        "url": "https://github.com/Azure-Samples/NewsFeedSite.git"
    }
]

Varje lagringsplatspost stöder följande fält:

Fält Description Obligatoriskt
name Ett eget namn för lagringsplatsen (används i rapporter och instrumentpaneler). Yes
url Git-klon-URL i HTTPS- eller SSH-format. En av url eller path

Tips/Råd

Du kan använda samma repos.json fil för batchutvärdering, batchplan och batchuppgraderingsarbetsflöden.

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.

Så här fungerar batchplanen

Arbetsflödet för batchplanering:

  1. Val av lagringsplats: Välj de lagringsplatser som du vill inkludera.
  2. Kontextval: Du kan också använda tillgängliga utvärderingsrapporter som indata.
  3. Fråga efter definition: Beskriv moderniseringsmålet en gång och tillämpa det på lagringsplatser.
  4. Förtydligande: Besvara eventuella uppföljningsfrågor från agenten.
  5. Plangenerering: Agenten skapar en plan för varje vald lagringsplats.

Varje genererad plan sparas i målrepositoriet och kan granskas eller redigeras innan den körs.

Kör batchplan

När du har konfigurerat dina lagringsplatser startar du arbetsflödet för batchplanering.

Interaktivt läge

  1. Kör moderniseringsagenten:

    modernize
    
  2. Välj Planera på huvudmenyn.

    ○ How would you like to modernize your app?
    
        Assess
        Analyze modernization readiness across one or multiple applications
      > Plan
        Generate a structured plan to guide the agent
        Execute
        Run the tasks defined in the modernization plan
    
      Or select a quick-start scenario:
    
        Upgrade
            Upgrade runtimes and frameworks across one or multiple applications
    
  3. Välj hur du vill ange dina mållagringsplatser. Välj Från en konfigurationsfil för att använda en repos.json fil.

    ○ Choose target repositories
    
        1. Current folder
          /Users/username/project
        2. Manual input
          Enter local path or remote URL
      > 3. From a config file
          /path/to/.github/modernize/repos.json
    

    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 planera för projektet i den aktuella katalogen.

  4. repos.json Om filen identifieras på standardplatsen fyller agenten automatiskt i den. Annars anger du sökvägen till konfigurationsfilen och trycker på Retur.

  5. 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.
  6. Välj 1. Håll planen lokal för att generera planer på datorn eller välj 2. Skicka till molnagenten för att låta en molnagent generera dem. Alternativ 2 är experimentellt.

  7. Ange ett plannamn eller tryck på Retur för att använda standardvärdet.

  8. Ange moderniseringsmålet som en uppmaning. Ett exempel:

    • upgrade to Spring Boot 3 and prepare for Azure deployment
    • migrate the database to Azure PostgreSQL
    • containerize the application and deploy to Azure Container Apps
  9. Tryck på Retur för att generera planerna.

  10. Agenten utför automatiskt följande:

    • Klonar varje vald lagringsplats eller skickar ett jobb till en molnagent för varje lagringsplats.
    • Genererar en plan för varje lagringsplats lokalt eller en PR med planen på varje lagringsplats.

Nästa steg

När du har slutfört batchplanen granskar du planerna och kör dem med hjälp execute av kommandot :

Lämna feedback

Om du har feedback om batchplanen eller moderniseringsagenten skapa ett problem i github-copilot-appmod-lagringsplatsen eller använd GitHub Copilot formuläret för moderniseringsfeedback.