Gambaran umum ekstensi Azure Developer CLI

Ekstensi Azure Developer CLI (azd) adalah komponen modular yang memperluas fungsionalitas Azure Developer CLI. Mereka memungkinkan Anda menambahkan kemampuan baru, mengotomatiskan alur kerja, dan berintegrasi dengan layanan lain langsung dari CLI. Gunakan ekstensi untuk menyesuaikan azd dengan kebutuhan tim yang berkembang dan skenario Azure.

Nota

azd Kerangka kerja ekstensi umumnya tersedia. Setiap ekstensi atau kemampuan mungkin memiliki status pratinjau tersendiri.

Mengelola sumber ekstensi

Anda dapat menemukan, menginstal, dan memperbarui ekstensi saat kebutuhan Anda tumbuh. Sumber ekstensi menangani distribusi dan manajemen.

  • Sumber ekstensi adalah manifes berbasis file atau URL yang menyediakan daftar ekstensi yang tersedia azd .
  • Anda dapat menambahkan sumber ekstensi kustom yang tersambung ke registri privat, lokal, atau publik.
  • Sumber ekstensi adalah konsep yang setara dengan umpan NuGet atau Node Package Manager (NPM) dan harus mematuhi skema registri ekstensi resmi.

azd mendukung beberapa cara untuk menyelesaikan ekstensi:

  • Registri sumber ekstensi resmi telah dikonfigurasi sebelumnya di dan dihosting di azd.
  • Sumber berbasis URL mereferensikan registri jarak jauh yang dihosting tim Anda untuk distribusi publik atau privat.
  • Sumber berbasis file mereferensikan manifes registri lokal untuk penggunaan offline atau pengembangan lokal.
  • Registri pengembangan dan nightly adalah sumber opsional untuk ekstensi pihak pertama yang masih dalam pengembangan dan dibangun secara otomatis. Gunakan untuk skenario pengujian alih-alih alur kerja produksi.
  • File bundel mandiri menyediakan paket portabel .zip untuk penginstalan langsung dari file lokal atau URL HTTPS saat Anda tidak ingin menghosting registri.

azd memberlakukan validasi ketat untuk nama sumber ekstensi kustom. Nama harus berisi 1 hingga 64 huruf kecil atau digit ASCII. Anda dapat menyertakan tanda hubung (-) dan garis bawah (_) antara huruf atau digit. Nama harus dimulai dan diakhir dengan huruf atau digit. azd menghasilkan kesalahan untuk nama yang tidak valid; azd tidak menormalkan nama tersebut. Nama azd dan bundle dicadangkan dan tidak dapat digunakan sebagai sumber khusus. Nama sumber harus valid ketika Anda menggunakannya dengan --source.

Sumber azd yang telah dikonfigurasi sebelumnya adalah registri resmi. Anda tidak dapat menghapusnya atau mengubah lokasinya.

Untuk ikut serta dalam registri pengembangan, jalankan perintah berikut:

# Add a new extension source name 'dev' to your `azd` configuration.
azd extension source add -n dev -t url -l "https://aka.ms/azd/extensions/registry/dev"

Perhatian

Ekstensi yang dihosting di registri dev tidak ditandatangani, tidak dicakup oleh Azure support, dan dapat mengubah atau dihapus tanpa pemberitahuan.

Perintah sumber ekstensi

Gunakan perintah berikut untuk mengelola sumber ekstensi untuk penginstalan Anda azd .

Mencantumkan sumber ekstensi yang terinstal

azd extension source list

Menambahkan sumber ekstensi baru

azd extension source add -n <name> -t url -l <registry-url>
  • -l, --location: Lokasi sumber ekstensi.
  • -n, --name: Nama sumber ekstensi. Gunakan nama sumber kustom yang valid.
  • -t, --type: Jenis sumber ekstensi. Jenis yang didukung adalah file dan url.

Menghapus sumber ekstensi

azd extension source remove <name>

Anda tidak dapat menghapus sumber yang telah dikonfigurasi azd sebelumnya.

Jika pembaruan melaporkan kesalahan pemuatan sumber yang disebabkan oleh nama sumber warisan yang tidak valid di ~/.azd/config.json, hapus sumber yang menyinggung dengan azd extension source remove, lalu tambahkan lagi dengan nama yang valid.

Mengelola ekstensi

Setelah Anda mengaktifkan ekstensi dan mengonfigurasi sumber ekstensi Anda, instal ekstensi untuk menambahkan kemampuan baru ke azd. Untuk contoh bekerja dengan ekstensi, lihat Mulai Cepat - gunakan ekstensi AI.

Mencantumkan ekstensi

azd extension list [flags]
  • --installed Menampilkan daftar ekstensi yang terinstal.
  • --source Hanya mencantumkan ekstensi dari sumber yang ditentukan. Nama sumber harus berupa nama sumber terdaftar yang valid.
  • --tags Memfilter ekstensi menurut tag, seperti AI atau pengujian.

Menginstal ekstensi

azd extension install <extension-names> [flags]

Ganti <extension-name> dengan nama ekstensi yang ingin Anda instal.

  • -v, --version Menentukan versi yang tepat untuk diinstal. Opsi ini tidak menerima rentang versi atau batasan dan tidak dapat digunakan saat menginstal bundel mandiri (.zip jalur file atau URL).
  • -s, --source Menentukan sumber ekstensi yang digunakan untuk penginstalan. Nama sumber harus berupa nama sumber terdaftar yang valid.

Untuk menginstal bundel mandiri dari URL HTTPS, berikan lokasi bundel sebagai nama ekstensi:

azd extension install https://example.com/extensions/example.zip
  • --all Memutakhirkan semua ekstensi yang telah diinstal sebelumnya jika ditentukan.
  • -v, --version Meningkatkan ekstensi tertentu ke versi yang tepat, jika disediakan. Opsi ini tidak menerima rentang atau batasan versi.
  • -s, --source Menentukan sumber ekstensi yang digunakan untuk penginstalan. Nama sumber harus berupa nama sumber terdaftar yang valid.
  • --no-dependency-updates Mencegah pembaruan pada dependensi saat ditentukan.

Menghapus ekstensi

azd extension uninstall <extension-name>
  • --all Menghapus semua ekstensi yang terinstal jika ditentukan.

Mendeklarasikan ekstensi yang diperlukan dalam proyek

Proyek dapat mendeklarasikan ekstensi yang diperlukan sehingga azure.yamlazd dapat menyelesaikan dan menginstal versi ekstensi yang dibutuhkan proyek. Tambahkan persyaratan ekstensi di bawah requiredVersions.extensions, dan gunakan latest, versi yang tepat, atau batasan versi semantik yang didukung.

requiredVersions:
  extensions:
    azure.ai.agents: "latest"
    contoso.azd.tagger: "^2.0.0"

Gunakan persyaratan tingkat proyek saat templat bergantung pada host layanan yang disediakan ekstensi, penangan siklus hidup, penyedia validasi, atau perintah. Untuk detail batasan skema dan versi lengkap, lihat requiredVersions.

Memahami titik integrasi ekstensi

Ekstensi dapat berintegrasi dengan azd dalam beberapa cara:

  • Tambahkan namespace perintah dengan metadata, bantuan, dan contoh.
  • Menyediakan skema konfigurasi dan metadata IntelliSense untuk file proyek.
  • Daftarkan penanganan aktivitas siklus hidup untuk alur kerja seperti provisi, paket, dan penyebaran.
  • Tambahkan penyedia untuk provisi kustom, validasi, target layanan, dan dukungan bahasa atau kerangka kerja.
  • Mengekspos kemampuan server Model Context Protocol (MCP) untuk agen dan alat pengembang.

Untuk panduan implementasi, lihat Konsep pengembangan ekstensi.

Gunakan ekstensi azd dalam kontainer pengembangan

azd Fitur Kontainer Dev mendukung extensions opsi untuk secara otomatis menginstal daftar ekstensi azd yang dipisahkan dengan koma selama proses build kontainer. Ekstensi yang diinstal dengan cara ini tersedia segera setelah kontainer dimulai, mengurangi penyiapan manual dan memungkinkan azd perintah untuk berjalan dengan ekstensi yang diperlukan yang sudah diinstal.

Untuk menginstal ekstensi secara otomatis, tambahkan extensions opsi ke azd entri fitur di file Anda devcontainer.json :

{
    "name": "Azure Developer CLI",
    "image": "mcr.microsoft.com/devcontainers/python:3.10-bullseye",
    "features": {
        "ghcr.io/azure/azure-dev/azd:latest": {
            "extensions": "my-ext-1,my-ext-2"
        }
    }
}

Nilainya extensions adalah daftar nama ekstensi yang azd dipisahkan koma. Penginstalan terjadi selama build kontainer, sehingga ekstensi siap digunakan segera setelah kontainer dimulai. Setelah mengubah daftar ekstensi, gunakan perintah Bangun ulang dan Buka kembali di Kontainer Dev di Visual Studio Code untuk membangun kembali kontainer dengan ekstensi yang diperbarui.

Pelajari selengkapnya tentang Fitur Azd Dev Container.

Langkah selanjutnya