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.
BERLAKU UNTUK: Semua tingkatan manajemen API
APIOps CLI adalah alat konfigurasi-sebagai-kode untuk Azure API Management. Dalam artikel ini, Anda menggunakannya untuk mengekstrak konfigurasi Manajemen API ke dalam artefak lokal, meninjau artefak di Git, melihat pratinjau perubahan, dan mempublikasikan artefak yang disetujui ke instance Manajemen API. CLI juga dapat membuat file GitHub Actions atau Azure Pipelines untuk alur kerja APIOps.
Langkah-langkah tersebut menyediakan alur kerja minimal yang dapat Anda validasi dengan instance Manajemen API nonproduksi. Untuk panduan arsitektur dan desain, lihat Penerapan API otomatis dengan APIOps.
Gunakan alur kerja ini untuk:
- Tinjau definisi API, kebijakan, dan konfigurasi Manajemen API lainnya melalui pull request.
- Simpan riwayat yang dapat diaudit dari perubahan konfigurasi yang disetujui.
- Promosikan artefak yang telah ditinjau antar lingkungan Manajemen API.
- Mulailah dengan konfigurasi yang diekstrak dari instans yang sudah ada atau tulis artefak yang kompatibel dengan CLI di dalam kode.
APIOps CLI melengkapi pendekatan API DevOps yang dijelaskan dalam Menggunakan DevOps dan CI/CD untuk menerbitkan API. Evaluasilah CLI dan alur kerja artefak yang ingin Anda gunakan di lingkungan nonproduksi sebelum Anda menggunakannya untuk penerapan produksi.
Prasyarat
- Node.js versi 22 atau yang lebih baru.
- Azure CLI, untuk langkah-langkah autentikasi lokal dalam artikel ini.
- Langganan Azure dan instance Manajemen API nonproduksi yang sudah ada.
- Repositori Git untuk artefak Manajemen API Anda.
- Sebuah identitas dengan akses ke instance API Management. Panduan memulai APIOps CLI mencantumkan peran Kontributor Layanan Manajemen API dan Pembaca pada cakupan sumber daya API Management untuk alur kerja ekstraksi dan publikasi.
Untuk otomatisasi produksi, gunakan identitas terpisah dengan hak istimewa paling rendah jika memungkinkan. Identitas ekstraksi memerlukan akses baca ke instance sumber. Identitas penerbit hanya memerlukan izin yang diperlukan untuk memperbarui instans target.
Instal APIOps CLI
@azure-tools/apiops-cli Install paket npm tersebut:
npm install -g @azure-tools/apiops-cli
Verifikasi versi yang diinstal:
apiops --version
Catat dan sematkan versi yang Anda setujui untuk alur CI/CD Anda. Tinjau changelog APIOps CLI sebelum Anda melakukan peningkatan.
Mengautentikasi ke Azure
Untuk penggunaan lokal, masuk dengan Azure CLI dan pilih langganan yang berisi instance Manajemen API nonproduksi Anda:
az login
az account set --subscription <subscription-id>
APIOps CLI menggunakan DefaultAzureCredential. Selain kredensial Azure CLI, aplikasi ini mendukung kredensial lingkungan, identitas beban kerja, identitas terkelola, kredensial Azure PowerShell, dan Azure Developer CLI.
Untuk CI/CD, sebaiknya gunakan federasi identitas beban kerja atau identitas terkelola alih-alih rahasia klien. Jangan pernah memasukkan kredensial, token akses, kunci langganan, atau nilai rahasia bernama dalam kontrol sumber. Untuk opsi autentikasi yang didukung, lihat panduan autentikasi APIOps CLI.
Siapkan repositori artefak
Jalankan perintah APIOps CLI dari root repositori Git yang berisi artefak Manajemen API Anda.
Untuk membuat struktur awal pipeline dan templat konfigurasi untuk GitHub Actions, jalankan:
apiops init --ci github-actions --environments dev,prod --non-interactive
Untuk Azure Pipelines, gunakan:
apiops init --ci azure-devops --environments dev,prod --non-interactive
Perintah ini membuat definisi alur, templat filter ekstraksi, templat penimpaan lingkungan, panduan penyiapan identitas, dan direktori apim-artifacts. Tinjau setiap file yang dihasilkan sebelum Anda melakukan commit atau mengaktifkan pipeline. Jangan gunakan --force dalam repositori yang sudah berisi file kecuali jika Anda meninjau file-file yang akan ditimpa oleh perintah tersebut.
Jika Anda sudah memiliki desain repositori dan pipeline, Anda dapat membuat atau memilih direktori artefak dan menggunakan perintah ekstrak dan publikasi secara langsung.
Buat artefak awal
Pilih salah satu pendekatan berikut untuk menetapkan artefak yang dimiliki repositori Anda.
Ekstrak konfigurasi yang sudah ada
Untuk membuat baseline dari instance API Management yang sudah ada, ekstrak konfigurasinya:
apiops extract \
--subscription-id <source-subscription-id> \
--resource-group <source-resource-group> \
--service-name <source-apim-name> \
--output ./apim-artifacts
Perintah ini membuat file informasi JSON, file kebijakan XML, dan file spesifikasi API dalam hierarki di bawah .apim-artifacts Untuk instance besar, konfigurasikan filter ekstraksi sehingga repositori hanya mengelola sumber daya yang diinginkan.
Mulailah dengan artefak berbasis kode
Untuk alur kerja code-first, tambahkan spesifikasi OpenAPI serta file informasi dan kebijakan API Management yang diperlukan dengan menggunakan format artefak CLI APIOps. Jangan berasumsi bahwa tata letak repositori aplikasi yang sudah ada atau file OpenAPI sendiri sudah siap untuk apiops publish.
Jika Anda baru mengenal format artefak, ekstrak terlebih dahulu API referensi berukuran kecil dari instans nonproduksi. Gunakan file hasil sebagai template, dan tinjau panduan alur kerja code-first.
Tinjau artefak
Sebelum Anda menerbitkan:
- Periksa file yang dihasilkan atau dibuat dan pastikan repositori hanya berisi sumber daya yang ingin Anda kelola.
- Tinjau spesifikasi API, kebijakan, backend, nilai bernama, produk, dan ketergantungannya.
- Hapus nilai spesifik lingkungan yang seharusnya tidak dipindahkan ke lingkungan lain. Gunakan file penggantian lingkungan yang telah ditinjau atau referensi Azure Key Vault jika sesuai.
- Cari kredensial dan nilai rahasia. Ekstraksi menyamarkan field rahasia yang didukung dan pola kebijakan yang dikenali, tetapi mungkin tidak mendeteksi setiap rahasia yang disematkan. Jangan menyimpan rahasia atau nilai-nilai yang belum terselesaikan
*** REDACTED ***. - Komitkan artefak ke cabang dan gunakan pull request untuk validasi dan persetujuan.
Pratinjau publikasi
Jalankan uji coba terhadap instance target nonproduksi. Dry run menampilkan pembuatan, pembaruan, dan penghapusan yang direncanakan tanpa benar-benar menerapkannya:
apiops publish \
--subscription-id <target-subscription-id> \
--resource-group <target-resource-group> \
--service-name <target-apim-name> \
--source ./apim-artifacts \
--dry-run
Tinjau output dan selesaikan perubahan tak terduga atau ketergantungan yang hilang. Dry run yang sukses tidak menggantikan pengujian perilaku API, kebijakan, izin, atau konektivitas backend.
Caution
Jangan menambah --delete-unmatched ke alur kerja pertama Anda. Opsi itu menghapus sumber daya di instance target yang tidak direpresentasikan dalam artefak sumber.
Publikasikan artefak yang telah ditinjau
Setelah pull request disetujui dan uji coba berhasil, publikasikan artefak yang sama yang sudah ditinjau ke target nonproduksi:
apiops publish \
--subscription-id <target-subscription-id> \
--resource-group <target-resource-group> \
--service-name <target-apim-name> \
--source ./apim-artifacts
Validasi API dan kebijakan dalam instance target setelah dipublikasikan. Saat Anda mengotomatisasi alur kerja ini, konfigurasikan pipeline untuk mempublikasikan commit yang disetujui dan lindungi lingkungan deployment dengan pemeriksaan dan persetujuan yang diperlukan oleh organisasi Anda.
Langkah berikutnya
- Tinjau panduan memulai APIOps CLI.
- Pelajari tentang perintah APIOps CLI dan integrasi CI/CD.
- Pelajari cara menggunakan DevOps dan CI/CD untuk menerbitkan API.