Menerbitkan ekstensi

Setelah Anda membuat ekstensi Azure Developer CLI (azd), paketkan dan terbitkan ke registri sehingga orang lain dapat menginstalnya. Artikel ini menjelaskan cara mempublikasikan ekstensi contoh Contoso Resource Tagger dari panduan cepat Membuat ekstensi sampel. Anda dapat menerapkan langkah yang sama ke ekstensi apa pun.

Nota

azd Kerangka kerja ekstensi umumnya tersedia. Ekstensi atau kemampuan individual mungkin memiliki status pratinjau mereka sendiri.

Pilih registri

azd dapat menyelesaikan ekstensi dari registri resmi, manifes registri berbasis URL kustom, manifes registri berbasis file, dan file bundel portabel. Pilih pendekatan distribusi yang cocok dengan cara pengguna menginstal ekstensi Anda:

  • Registri resmi: Registri yang dikirim dengan azd. Untuk menerbitkan di sini, kirimkan permintaan pull ke fork repositori azure/azure-dev.
  • Registri berbasis URL kustom: Registri jarak jauh memanifestasikan bahwa tim Anda menghosting untuk distribusi publik atau privat.
  • Registri berbasis file: Manifes registri lokal untuk pengembangan, pengujian, penggunaan offline, atau distribusi privat.
  • Pengembangan atau registri malam hari: Registri keikutsertaan untuk work-in-progress atau ekstensi pihak pertama yang dibuat secara otomatis. Ekstensi dalam registri dev tidak ditandatangani, tidak dicakup oleh Azure support, dan dapat berubah atau dihapus tanpa pemberitahuan.
  • Bundel portabel: Paket mandiri .zip yang diinstal pengguna langsung dari jalur lokal atau URL HTTPS tanpa menambahkan sumber registri.

Artikel ini menggunakan registri pengembangan untuk menunjukkan penerbitan ke sumber pengujian bersama. Untuk detail resolusi sumber dan versi, lihat Referensi kerangka kerja Ekstensi.

Prasyarat

  • Ekstensi yang telah selesai dibuat dari panduan memulai cepat Membuat ekstensi sampel.
  • Ekstensi pengembang azd(microsoft.azd.extensions), yang menyediakan perintah azd x yang digunakan untuk mengemas dan menerbitkan. Jika Anda telah menyelesaikan panduan mulai cepat, komponen tersebut sudah terinstal. Jika tidak, jalankan azd extension install microsoft.azd.extensions.
  • Akun GitHub dan sebuah repositori untuk menyimpan artefak rilis.
  • Token akses pribadi (PAT) GitHub dengan repo cakupan. Perintah rilis menggunakan token ini untuk membuat rilis GitHub dan mengunggah artefak. Untuk informasi selengkapnya, lihat Mengelola token akses pribadi Anda.

Perbarui versi dan catatan perubahan

Sebelum menerbitkan, perbarui versi dan dokumentasikan perubahan Anda:

  1. Perbarui properti version di dalam extension.yaml sesuai dengan pembuatan versi semantik. Tambahkan nomor mayor, minor, atau patch berdasarkan jenis perubahannya.

  2. Perbarui CHANGELOG.md dengan perubahan penting untuk versi ini. azd menggunakan changelog untuk menghasilkan catatan rilis.

Mengemas ekstensi

azd x pack Gunakan perintah untuk membangun biner khusus platform dan mengemas ekstensi:

azd x pack

Perintah ini membuat artefak untuk setiap platform yang didukung di direktori output Anda. azd x release mengunggah artefak ini, dan azd x publish memperbarui metadata registri. Kemasan juga menjalankan pengujian rekam jepret untuk memverifikasi ekstensi berperilaku seperti yang diharapkan sebelum Anda menerbitkan.

Jika Anda ingin mendistribusikan ekstensi secara langsung alih-alih menerbitkannya melalui registri, buat bundel mandiri dengan azd x pack --bundle. Bundel adalah portabel .zip yang berisi metadata registri dan artefak yang diperlukan untuk penginstalan dari jalur file atau URL HTTPS.

Merilis ekstensi

Gunakan perintah azd x release untuk membuat rilis GitHub dan mengunggah artefak yang telah dipaketkan. Berikan PAT GitHub Anda sehingga perintah dapat membuat rilis:

azd x release

Perintah membuat rilis di repositori GitHub Anda, mengunggah biner paket, dan menghasilkan catatan rilis dari changelog Anda. Penerbitan berbasis registri menggunakan artefak rilis ini sebagai paket ekstensi yang dapat diunduh. Distribusi bundel langsung tidak memerlukan langkah rilis ini kecuali Anda ingin menghosting bundel di GitHub.

Tip

Simpan PAT GitHub Anda dalam variabel lingkungan daripada meneruskannya pada baris perintah. Periksa bantuan perintah dengan menjalankan azd x release --help untuk melihat opsi autentikasi yang didukung.

Menerbitkan ke registri

azd x publish Gunakan perintah untuk menambahkan atau memperbarui entri ekstensi Anda di registri ekstensi:

azd x publish

Perintah memperbarui metadata registri sehingga pengguna dapat menemukan dan menginstal ekstensi Anda dari registri pengembangan. Langkah ini berbeda dari publikasi lokal yang dilakukan azd x init dalam panduan memulai cepat, yang mendaftarkan ekstensi hanya pada sumber lokal di komputer Anda. Menjalankan azd x publish pembaruan registri pengembangan bersama sehingga pengguna lain dapat menginstal ekstensi Anda.

Menginstal dan memverifikasi

Setelah Anda menerbitkan, verifikasi bahwa orang lain dapat menginstal ekstensi Anda dari registri pengembangan:

  1. Pastikan Anda sudah menambahkan registri pengembangan.

    azd extension source add -n dev -t url -l "https://aka.ms/azd/extensions/registry/dev"
    
  2. Pasang ekstensi dengan ID-nya.

    azd extension install contoso.azd.tagger
    
  3. Jalankan perintah untuk mengonfirmasi ekstensi berfungsi.

    azd tagger show
    

Menerbitkan ke registri resmi

Untuk menerbitkan ke registri resmi, kirimkan ekstensi Anda ke repositori azure/azure-dev:

  1. Buat fork dari repositori azure/azure-dev.
  2. Tambahkan entri registri ekstensi Anda ke file registri resmi di fork Anda.
  3. Kirim permintaan tarik untuk ditinjau.

Tim Azure Developer CLI meninjau pengiriman registri resmi untuk kualitas dan keamanan sebelum mereka bergabung.

Memecahkan masalah penerbitan

Tabel berikut ini mencantumkan masalah penerbitan umum dan resolusinya:

Issue Resolution
Rilis gagal dengan kesalahan autentikasi Pastikan PAT GitHub Anda valid dan sudah memiliki scope repo.
Pengujian rekam jepret gagal selama azd x pack Tinjau output pengujian, perbarui rekam jepret Anda jika perubahan diharapkan, dan jalankan ulang perintah.
Pengguna tidak dapat menemukan ekstensi Anda Pastikan registri pengembangan telah ditambahkan dan azd x publish berhasil diselesaikan.
Konflik versi selama penerbitan Tingkatkan version di dalam extension.yaml ke versi baru yang belum digunakan.