Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Peningkatan batch memungkinkan Anda menerapkan rencana modernisasi yang konsisten di beberapa repositori secara bersamaan. Artikel ini menunjukkan kepada Anda cara meningkatkan beberapa aplikasi secara efisien dalam skala perusahaan.
Dengan menggunakan upgrade batch, Anda dapat:
- Tingkatkan beberapa aplikasi secara bersamaan dengan menggunakan target peningkatan yang sama.
- Terapkan pola yang konsisten dengan menggunakan pola peningkatan serupa di seluruh aplikasi.
- Manfaatkan eksekusi paralel saat mendelegasikan ke Agen Pengodean Cloud.
Pemutakhiran batch memberikan manfaat berikut:
Eksekusi yang konsisten:
- Pendekatan standar: Terapkan pola modernisasi yang sama di semua repositori.
- Vaabilitas yang berkurang: Pastikan jalur peningkatan yang konsisten untuk aplikasi serupa.
- Strategi yang dapat digunakan kembali: Gunakan keterampilan khusus organisasi di seluruh aplikasi.
Skala dan efisiensi:
- Pemrosesan paralel: Gunakan Cloud Coding Agents untuk memproses beberapa repositori secara bersamaan.
- Alur kerja otomatis: Integrasikan dengan alur CI/CD untuk modernisasi terjadwal.
- Penghematan waktu: Kurangi total waktu modernisasi dari minggu ke jam.
Prasyarat
- Modernisasi CLI.
- Penilaian batch lengkap (disarankan tetapi tidak diperlukan).
- Semua repositori menggunakan bahasa pemrograman yang sama (Java atau .NET).
- Akses ke semua repositori yang ingin Anda tingkatkan.
- Autentikasi GitHub dikonfigurasi (
gh auth login).
Penting
Semua repositori dalam peningkatan batch harus menggunakan bahasa pemrograman yang sama. Jika repositori menggunakan bahasa yang berbeda, peningkatan batch menandai repositori sebagai gagal dan melewatinya.
Konfigurasikan repositori
Untuk mengaktifkan peningkatan batch, buat .github/modernize/repos.json file di direktori kerja Anda yang mencantumkan semua repositori yang ingin Anda tingkatkan.
Petunjuk / Saran
Untuk repositori sampel, pertama-tama lakukan fork dan pastikan Anda memiliki izin admin untuk mendelegasikan pekerjaan kepada Cloud Coding Agents.
[
{
"name": "PhotoAlbum-Java",
"url": "https://github.com/Azure-Samples/PhotoAlbum-Java.git"
},
{
"name": "ZavaSocialFrontEnd",
"url": "https://github.com/Azure-Samples/ZavaSocialFrontEnd"
}
]
Konfigurasi repositori
Setiap entri memerlukan:
- nama: Nama yang mudah diingat untuk repositori (digunakan dalam laporan dan dasbor).
- url: URL untuk klon Git (dalam format HTTPS).
Petunjuk / Saran
Anda dapat menyertakan repositori dari organisasi yang berbeda dan menggunakan metode autentikasi yang berbeda selama Anda memiliki akses.
Lokasi file
Anda harus menempatkan file di repos.json.github/modernize/repos.json.
Agen modernisasi secara otomatis mendeteksi file ini saat menjalankan operasi batch.
Pilih mode eksekusi Anda
Peningkatan batch mendukung dua mode eksekusi dan dua metode interaksi:
Mode eksekusi
Eksekusi lokal
- Terbaik untuk: Pengujian, set repositori yang lebih kecil (repositori 1-5), atau ketika Anda lebih suka kontrol lokal.
- Cara kerjanya: Memproses repositori secara berurutan di komputer lokal Anda.
- Penyiapan diperlukan: Tidak ada yang melebihi prasyarat dasar.
Delegasi Agen Pemrograman Cloud
- Terbaik untuk: Operasi skala perusahaan, portofolio besar (5+ repos), atau pemrosesan paralel.
- Cara kerjanya: Mengirimkan tugas ke GitHub Cloud Coding Agents untuk eksekusi paralel di cloud.
- Diperlukan penyiapan: Konfigurasi server MCP di setiap repositori (dikonfigurasi selama penyiapan).
Petunjuk / Saran
Dengan memproses repositori secara paralel, delegasi Cloud Coding Agent dapat mengurangi total waktu modernisasi dari jam ke menit.
Metode interaksi
Mode interaktif (TUI)
- Pengalaman terpandu dengan menu dan petunjuk.
- Terbaik untuk pengguna pertama kali atau saat Anda ingin meninjau opsi.
- Mendukung eksekusi lokal dan cloud.
Mode non-interaktif (CLI/tanpa kepala)
- Berbasis baris perintah, sepenuhnya otomatis.
- Terbaik untuk alur dan otomatisasi CI/CD.
- Mendukung eksekusi lokal dan cloud dengan flag
--delegate cloud.
Nota
Anda dapat menggabungkan mode eksekusi apa pun dengan metode interaksi apa pun. Contohnya:
-
modernize(interaktif, lokal) -
modernize→ pilih Cloud Coding Agents (interaktif, cloud) -
modernize upgrade "Java 21"(non-interaktif, lokal) -
modernize upgrade "Java 21" --delegate cloud(non-interaktif, cloud)
Cara kerja pembaruan batch
Alur kerja peningkatan sebuah batch:
- Deteksi bahasa: Secara otomatis mendeteksi bahasa proyek (Java atau .NET) dari repositori pertama.
- Pembuatan paket: Membuat paket peningkatan berdasarkan permintaan Anda atau menggunakan versi LTS terbaru.
- Eksekusi: Menerapkan peningkatan ke setiap repositori.
- Validasi: Membangun dan memvalidasi perubahan untuk setiap repositori.
Jalankan peningkatan batch
Setelah Anda mengonfigurasi repositori dan memilih mode eksekusi, mulailah peningkatan batch.
Mode interaktif (tingkatkan secara lokal)
Jalankan agen modernisasi:
modernizeAgen mendeteksi
repos.jsonfile dan menampilkan daftar repositori:Pilih repositori untuk dimutakhirkan, dan tekan
Enteruntuk mengonfirmasi pilihan Anda.-
Tekan
Ctrl+Auntuk memilih semua repositori. -
Atau gunakan tombol panah untuk menavigasi dan menekan
Enteruntuk memilih repositori individual.
-
Tekan
Pilih 2. Tingkatkan dari menu utama.
Untuk menjalankan peningkatan, pilih 1. Tingkatkan secara lokal.
Agen secara otomatis:
- Membuat paket peningkatan berdasarkan permintaan Anda.
- Menerapkan rencana ke setiap repositori secara berurutan.
- Membangun dan memvalidasi setiap repositori setelah perubahan.
- Menampilkan kemajuan dan ringkasan untuk setiap repositori.
Mode interaktif (mendelegasikan ke Agen Pengkodean Cloud)
Prasyarat: Mengonfigurasi server MCP
Sebelum menjalankan peningkatan, konfigurasikan GitHub Copilot Modernization MCP Server di setiap repositori.
Untuk aplikasi Java, tambahkan konfigurasi ini di bagian Cloud Coding Agent di pengaturan repositori Anda:
{
"mcpServers": {
"app-modernization": {
"type": "local",
"command": "npx",
"tools": [
"*"
],
"args": [
"-y",
"@microsoft/github-copilot-app-modernization-mcp-server"
]
}
}
}
Steps
Jalankan agen modernisasi:
modernizeAgen mendeteksi
repos.jsonfile dan menampilkan daftar repositori:Pilih repositori untuk dimutakhirkan, dan tekan
Enteruntuk mengonfirmasi pilihan Anda.-
Tekan
Ctrl+Auntuk memilih semua repositori. -
Atau gunakan tombol panah untuk menavigasi dan menekan
Enteruntuk memilih repositori individual.
-
Tekan
Pilih 2. Tingkatkan dari menu utama.
Untuk menjalankan peningkatan, pilih 2. Mendelegasikan ke Agen Pengodean Cloud.
Agen secara otomatis:
Membuat rencana peningkatan untuk setiap repositori.
Mengirimkan tugas Cloud Coding Agent untuk setiap repositori.
Menjalankan pekerjaan secara independen secara paralel di cloud.
Menampilkan ID pekerjaan dan URL PR untuk setiap repositori.
Mendelegasikan tugas ke AgentHQ untuk eksekusi paralel.
Melacak kemajuan untuk setiap tugas individual secara real-time.
Menampilkan ringkasan pemutakhiran untuk setiap tugas yang telah selesai.
Mode non-interaktif (CLI)
Untuk otomatisasi dan integrasi CI/CD, gunakan modernize upgrade perintah :
Tingkatkan secara lokal:
modernize upgrade "Java 21"
Tingkatkan menggunakan Cloud Coding Agents:
modernize upgrade "Java 21" --delegate cloud
Perintah secara otomatis mendeteksi repos.json file dan memproses semua repositori.
Nota
Untuk eksekusi tanpa kepala batch dan opsi CLI lainnya, lihat bagian Konfigurasi multi-repositori di referensi perintah CLI.
Meninjau hasil
Ketika peningkatan batch selesai:
Periksa laporan agregat yang ditampilkan di terminal.
Tinjau perubahan repositori individual:
cd <repository-name> git status git diffBuat permintaan pull untuk peningkatan yang berhasil:
cd <repository-name> gh pr create --title "Upgrade to Java 21" --body "Automated upgrade by modernization agent"
Pemecahan masalah pembaruan batch
Masalah umum
Kesalahan akses repositori:
- Verifikasi autentikasi GitHub dengan menggunakan
gh auth status. - Pastikan Anda memiliki akses ke semua repositori di
repos.json.
Kesalahan ketidakcocokan bahasa:
- Pastikan semua repositori dalam
repos.jsonmenggunakan bahasa yang sama (Java atau .NET). - Buat operasi batch terpisah untuk bahasa yang berbeda.
Kegagalan kloning:
- Verifikasi URL repositori di
repos.jsonsudah benar dan dapat diakses. - Pastikan Anda memiliki izin akses yang tepat ke semua repositori.
- Periksa konektivitas jaringan dan pengaturan VPN.
Kegagalan build setelah peningkatan:
- Tinjau pesan kesalahan build dalam laporan agregat.
- Periksa apakah Anda perlu memperbarui dependensi lain.
- Verifikasi kompatibilitas pustaka pihak ketiga dengan versi baru.
Kegagalan repositori individu:
- Proses batch berlanjut bahkan jika repositori individual gagal.
- Tinjau laporan agregat untuk mengidentifikasi repositori yang gagal.
- Periksa log kesalahan untuk pesan kesalahan tertentu.
- Coba lagi repositori yang gagal satu per satu.
Kegagalan Cloud Coding Agent:
- Periksa izin GitHub Actions dan batas kuota.
- Untuk .NET Framework, pastikan konfigurasi runner Windows diatur dengan benar.
Langkah berikutnya
Setelah menyelesaikan peningkatan batch, Anda dapat:
Terus tingkatkan:
- Jalankan penilaian batch - Menilai ulang untuk memverifikasi peningkatan dan mengidentifikasi peluang baru.
- Buat keterampilan kustom untuk pola khusus organisasi - Menangkap pola yang berhasil untuk digunakan kembali.
Pelajari selengkapnya:
Berikan umpan balik
Kami menghargai input Anda! Jika Anda memiliki umpan balik tentang peningkatan batch atau agen modernisasi, buat isu di repositori github-copilot-appmod atau gunakan formulir umpan balik modernisasi GitHub Copilot.