Perintah Bicep CLI
Artikel ini menjelaskan perintah yang dapat digunakan di Bicep CLI. Anda dapat menjalankan perintah ini dengan menggunakan Azure CLI atau dengan langsung memanggil perintah Bicep CLI. Setiap metode memerlukan proses penginstalan yang berbeda. Untuk informasi selengkapnya tentang penginstalan, lihat Azure CLI dan Azure PowerShell.
Panduan ini menunjukkan cara menjalankan perintah di Azure CLI. Saat menjalankan perintah di Azure CLI, mulai dengan az
. Jika Anda tidak menggunakan Azure CLI, jalankan perintah tanpa az
di awal masing-masing. Misalnya, az bicep build
menjadi bicep build
, dan az bicep version
menjadi bicep --version
.
build
Perintah mengonversi build
file Bicep menjadi templat JSON Azure Resource Manager (templat ARM). Biasanya, Anda tidak perlu menjalankan perintah ini karena dijalankan secara otomatis saat Anda menyebarkan file Bicep. Jalankan secara manual saat Anda ingin melihat templat JSON ARM yang dibuat dari file Bicep Anda.
Menggunakan salah satu fitur Bicep berikut secara otomatis mengaktifkan pembuatan kode bahasa versi 2.0:
- jenis yang ditentukan pengguna
- fungsi yang ditentukan pengguna
- impor waktu kompilasi
- fitur eksperimental
Contoh berikut mengonversi file Bicep bernama main.bicep ke templat ARM bernama main.json. File baru dibuat dalam direktori yang sama dengan file Bicep:
az bicep build --file main.bicep
Contoh berikutnya menyimpan main.json ke direktori lain:
az bicep build --file main.bicep --outdir c:\jsontemplates
Contoh berikutnya menentukan nama dan lokasi file yang akan dibuat:
az bicep build --file main.bicep --outfile c:\jsontemplates\azuredeploy.json
Untuk mencetak file ke stdout
, gunakan:
az bicep build --file main.bicep --stdout
Jika file Bicep Anda menyertakan modul yang mereferensikan registri eksternal, build
perintah secara otomatis memanggil restore
.
restore
Perintah mendapatkan file dari registri dan menyimpannya di cache lokal.
Catatan
Perintah restore
tidak menyegarkan cache. Untuk mengetahui informasi selengkapnya, lihat memulihkan.
Agar tidak memanggil pemulihan secara otomatis, gunakan sakelar --no-restore
:
az bicep build --no-restore <bicep-file>
Proses build dengan sakelar --no-restore
gagal jika salah satu modul eksternal belum di-cache:
The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" hasn't been restored.
Saat Anda mendapatkan kesalahan ini, jalankan build
perintah tanpa --no-restore
sakelar, atau jalankan bicep restore
terlebih dahulu.
Untuk menggunakan sakelar --no-restore
, Anda harus memiliki Bicep CLI versi 0.4.X atau yang lebih baru.
build-params
Perintah build-params
membuat .bicepparam
file ke dalam file parameter JSON:
az bicep build-params --file params.bicepparam
Perintah ini mengonversi file parameter params.bicepparam menjadi file parameter JSON params.json .
dekompilasi
Perintah mengonversi decompile
templat JSON ARM menjadi file Bicep:
az bicep decompile --file main.json
Perintah ini membuat file bernama main.bicep di direktori yang sama dengan main.json. Jika main.bicep ada di direktori yang sama, gunakan tombol --force untuk menimpa file Bicep yang ada.
Untuk informasi selengkapnya tentang menggunakan perintah ini, lihat Mendekompilasi templat JSON ARM ke Bicep.
decompile-params
Perintah decompile-params
mendekompresi file parameter JSON ke .bicepparam
file parameter.
az bicep decompile-params --file azuredeploy.parameters.json --bicep-file ./dir/main.bicep
Perintah ini mendekompilasi file parameter azuredeploy.parameters.json ke dalam file azuredeploy.parameters.bicepparam .
--bicep-file
menentukan jalur ke file Bicep (relatif terhadap .bicepparam
file) yang direferensikan dalam using
deklarasi.
format
Perintah memformat format
file Bicep. Ini memiliki fungsi yang sama dengan SHIFT+ALT+F
pintasan di Visual Studio Code.
az bicep format --file main.bicep
generate-params
Perintah generate-params
membangun file parameter dari file Bicep yang diberikan, memperbarui jika ada file parameter yang ada.
az bicep generate-params --file main.bicep --output-format bicepparam --include-params all
Perintah ini membuat file parameter Bicep bernama main.bicepparam. File parameter berisi semua parameter dalam file Bicep, baik dikonfigurasi dengan nilai default atau tidak.
az bicep generate-params --file main.bicep --outfile main.parameters.json
Perintah ini membuat file parameter bernama main.parameters.json. File parameter hanya berisi parameter tanpa nilai default yang dikonfigurasi dalam file Bicep.
Instal
Perintah menambahkan install
Bicep CLI ke lingkungan lokal Anda, dan hanya tersedia melalui Azure CLI. Untuk informasi selengkapnya, lihat Instal Alat Bicep.
Untuk menginstal versi terkini, gunakan:
az bicep install
Untuk memasang versi tertentu:
az bicep install --version v0.3.255
jsonrpc
Perintah ini jsonrpc
memungkinkan menjalankan Bicep CLI dengan antarmuka JSON-RPC, memungkinkan interaksi terprogram dengan output terstruktur dan menghindari penundaan cold-start saat mengkompilasi beberapa file. Penyiapan ini juga mendukung pembuatan pustaka untuk berinteraksi dengan file Bicep secara terprogram dalam bahasa non-.NET.
Format kawat untuk mengirim dan menerima input/output dibatasi header, menggunakan struktur berikut, di mana \r
dan \n
mewakili karakter pengembalian pengangkutan dan umpan baris:
Content-Length: <length>\r\n\r\n<message>\r\n\r\n
-
<length>
adalah panjang<message>
string, termasuk trailing\r\n\r\n
. -
<message>
adalah pesan JSON mentah.
Contohnya:
Content-Length: 72\r\n\r\n{"jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {}}\r\n\r\n
Pesan berikut menunjukkan contoh untuk versi Bicep.
Input:
{ "jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {} }
Outputnya:
{ "jsonrpc": "2.0", "id": 0, "result": { "version": "0.24.211" } }
Untuk metode yang tersedia & badan permintaan/respons, lihat ICliJsonRpcProtocol.cs
.
Misalnya membuat koneksi JSONRPC dan berinteraksi dengan file Bicep secara terprogram menggunakan Node, lihat jsonrpc.test.ts
.
Penggunaan untuk pipa bernama
Gunakan sintaks berikut untuk menyambungkan ke pipa bernama yang sudah ada sebagai klien JSONRPC:
bicep jsonrpc --pipe <named_pipe>`
<named_pipe>
adalah pipa bernama yang sudah ada untuk menyambungkan klien JSONRPC.
Untuk menyambungkan ke pipa bernama di OSX/Linux :
bicep jsonrpc --pipe /tmp/bicep-81375a8084b474fa2eaedda1702a7aa40e2eaa24b3.sock
Untuk menyambungkan ke pipa bernama di Windows :
bicep jsonrpc --pipe \\.\pipe\\bicep-81375a8084b474fa2eaedda1702a7aa40e2eaa24b3.sock`
Untuk contoh selengkapnya, lihat C# dan node.js.
Penggunaan untuk soket TCP
Gunakan sintaks berikut untuk menyambungkan ke soket TCP yang ada sebagai klien JSONRPC:
bicep jsonrpc --socket <tcp_socket>
<tcp_socket>
adalah nomor soket tempat klien JSONRPC terhubung.
Untuk menyambungkan ke soket TCP:
bicep jsonrpc --socket 12345
Penggunaan untuk stdin dan stdout
Gunakan sintaks berikut dan stdin
dan stdout
untuk pesan untuk menjalankan antarmuka JSONRPC:
bicep jsonrpc --stdio
lint
Perintah lint
mengembalikan kesalahan dan pelanggaran aturan linter dari file Bicep.
az bicep lint --file main.bicep
Jika file Bicep Anda menyertakan modul yang mereferensikan registri eksternal, lint
perintah secara otomatis memanggil restore
.
restore
Perintah mendapatkan file dari registri dan menyimpannya di cache lokal.
Catatan
Perintah restore
tidak menyegarkan cache. Untuk mengetahui informasi selengkapnya, lihat memulihkan.
Agar tidak memanggil pemulihan secara otomatis, gunakan sakelar --no-restore
:
az bicep lint --no-restore <bicep-file>
Proses lint dengan --no-restore
sakelar gagal jika salah satu modul eksternal belum di-cache:
The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" has not been restored.
Ketika Anda mendapatkan kesalahan ini, jalankan perintah lint
tanpa sakelar --no-restore
atau jalankan bicep restore
terlebih dahulu.
versi daftar
Perintah list-versions
mengembalikan semua versi Bicep CLI yang tersedia. Gunakan perintah ini untuk melihat apakah Anda ingin meningkatkan atau menginstal versi baru. Perintah ini hanya tersedia melalui Azure CLI.
az bicep list-versions
Perintah mengembalikan array versi yang tersedia:
[
"v0.28.1",
"v0.27.1",
"v0.26.170",
"v0.26.54",
"v0.25.53",
"v0.25.3",
"v0.24.24",
"v0.23.1",
"v0.22.6",
"v0.21.1",
"v0.20.4",
"v0.19.5",
"v0.18.4",
"v0.17.1",
"v0.16.2",
"v0.16.1",
"v0.15.31",
"v0.14.85",
"v0.14.46",
"v0.14.6",
"v0.13.1",
"v0.12.40",
"v0.12.1",
"v0.11.1",
"v0.10.61",
"v0.10.13",
"v0.9.1",
"v0.8.9",
"v0.8.2",
"v0.7.4"
]
terbitkan
Perintah publish
menambahkan modul ke registri. Registri kontainer Azure harus ada dan penerbitan akun ke registri harus memiliki izin yang benar. Untuk informasi selengkapnya tentang menyiapkan registri modul, lihat Menggunakan registri privat untuk modul Bicep. Untuk menerbitkan modul, akun harus memiliki profil dan izin yang benar untuk mengakses registri. Anda dapat mengonfigurasi profil dan prioritas kredensial untuk mengautentikasi ke registri dalam file konfigurasi Bicep.
Setelah menerbitkan file ke registri, Anda dapat mereferensikannya dalam modul.
Anda harus memiliki Bicep CLI versi 0.14.X atau yang lebih baru untuk menggunakan publish
perintah dan --documentationUri
/-d
parameter .
Untuk menerbitkan modul ke registri, gunakan:
az bicep publish --file <bicep-file> --target br:<registry-name>.azurecr.io/<module-path>:<tag> --documentationUri <documentation-uri>
Contohnya:
az bicep publish --file storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1 --documentationUri https://www.contoso.com/exampleregistry.html
Perintah publish
tidak mengenali alias yang ditentukan dalam file bicepconfig.json. Berikan jalur modul lengkap.
Peringatan
Penerbitan ke target yang sama menimpa modul lama. Kami menyarankan Anda meningkatkan versi saat memperbarui.
pulihkan
Ketika file Bicep Anda menggunakan modul yang dipublikasikan ke registri, perintah restore
mendapatkan salinan dari semua modul yang diperlukan dari registri. Ia menyimpan salinan tersebut dalam cache lokal. File Bisep hanya dapat dibangun ketika file eksternal tersedia di cache lokal. Biasanya, menjalankan pemulihan tidak diperlukan karena secara otomatis dipicu oleh proses build.
Untuk memulihkan modul eksternal ke cache lokal, akun harus memiliki profil dan izin yang benar untuk mengakses registri. Anda dapat mengonfigurasi profil dan prioritas kredensial untuk mengautentikasi ke registri dalam file konfigurasi Bicep.
Untuk menggunakan restore
perintah , Anda harus memiliki Bicep CLI versi 0.14.X atau yang lebih baru. Saat ini, perintah ini hanya tersedia saat memanggil Bicep CLI secara langsung. Saat ini tidak tersedia melalui Azure CLI.
Untuk memulihkan modul eksternal secara manual untuk file, gunakan:
az bicep restore --file <bicep-file> [--force]
File Bicep yang Anda sediakan adalah file yang ingin Anda sebarkan. File harus berisi modul yang menautkan ke registri. Misalnya, Anda dapat memulihkan file berikut:
module stgModule 'br:exampleregistry.azurecr.io/bicep/modules/storage:v1' = {
name: 'storageDeploy'
params: {
storagePrefix: 'examplestg1'
}
}
Cache lokal ditemukan dalam:
Di Windows
%USERPROFILE%\.bicep\br\<registry-name>.azurecr.io\<module-path\<tag>
Di Linux
/home/<username>/.bicep
Di Mac
~/.bicep
Perintah restore
tidak merefresh cache jika modul sudah di-cache. Untuk menyegarkan cache, Anda dapat menghapus jalur modul dari cache atau menggunakan sakelar --force
dengan restore
perintah .
peningkatan
Perintah upgrade
memperbarui versi terinstal Anda dengan versi terbaru. Perintah ini hanya tersedia melalui Azure CLI.
az bicep upgrade
version
Perintah version
mengembalikan versi yang diinstal:
az bicep version
Perintah menunjukkan nomor versi:
Bicep CLI version 0.22.6 (d62b94db31)
Untuk memanggil perintah ini secara langsung melalui Bicep CLI, gunakan:
bicep --version
Jika Bicep CLI belum diinstal, Anda akan melihat pesan kesalahan yang menyatakan bahwa Bicep CLI tidak ditemukan.
Langkah berikutnya
Untuk mempelajari selengkapnya tentang menyebarkan file Bicep, lihat: