Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article describes GitHub Copilot app modernization, which is an AI assistant that delivers end-to-end support for application modernization.
Enterprises often deal with technical debt throughout their development cycles, and upgrading Java runtimes, frameworks, and dependencies is a common but resource-intensive task. At the same time, many organizations aim to migrate and modernize their application estate to the cloud, which involves:
- Assessing the current state of code, configuration, and dependencies
- Planning Azure resources
- Remediating issues to enable successful migration
Built on GitHub Copilot agent mode, GitHub Copilot app modernization offers predefined tasks for common upgrade and migration scenarios while incorporating industry best practices for running applications on Azure. At the same time, it enables teams to infuse their own coding standards, organizational policies, and existing practices into the modernization process.
Key capabilities at a glance
- Application assessment and planning: Analyzes code, configuration, and dependencies. Helps you visualize every task in the modernization process, from assessment to deployment.
- Code transformations: Suggests and applies code remediation for upgrade and migration scenarios.
- Build, patching, and tests: Verifies that the project builds successfully after remediation, and applies fixes when needed. Performs Common Vulnerabilities and Exposures (CVE) checks to reduce exposure to security vulnerabilities. Migrates existing and generates new unit tests to validate modernization outcomes and improve test coverage.
- Containerization and deployment: Generates Dockerfiles for app containerization and other artifacts to automate deployment to Azure.
GitHub Copilot app modernization integrates GitHub Copilot's AI-powered capabilities with open-source tools like OpenRewrite
to automate complex upgrade steps. It supports both Maven and Gradle projects and targets upgrades between Java versions 8, 11, 17, and 21. The tool has a particular focus on modernizing applications that use the Spring Boot framework. The upgrade process keeps you in control and ensures transparency by displaying all logs and outputs.
Start your migration journey with App Assessments to get an overview of cloud readiness migration issues, including:
- Instructions for setting up Azure resources
- Recommendations on following best practices
- Recommendations for changing your application code
In scenarios where code changes are required, GitHub Copilot app modernization guides you through the remediation step. At this stage, you can use predefined tasks for common issues, such as:
- Switching from password-based authentication to managed identities
- Moving from Amazon Web Services (AWS) S3 to Azure Blob Storage
To learn more about predefined tasks available in GitHub Copilot app modernization today, see Predefined tasks.
When it comes to development, enterprises often have strict processes and controls, which is where customer-defined tasks come in. For more information, see Quickstart: create and apply your own tasks for GitHub Copilot app modernization
Customer-defined tasks are automatically generated by analyzing code commits from previously migrated applications. These tasks serve as remediation guides for similar issues in other apps, enabling Copilot to apply proven patterns across multiple codebases. With each successful migration, the knowledge base expands, accelerating future remediations and reducing manual effort
GitHub Copilot app modernization also includes specialized agents to:
- Verify your app builds successfully
- Reduce technical debt by addressing CVEs
- Validate behavioral integrity with unit tests
For more information, see GitHub Copilot app modernization Java utilities.
Modernization isn't just about upgrading code, it's about preparing your applications for the cloud. Whether you're targeting Azure App Service, Azure Container Apps, Azure Kubernetes Service (AKS), or AKS Automatic, Copilot helps you get there faster and with confidence.