Aracılığıyla paylaş


Bicep CLI komutları

Bu makalede, Bicep CLI'da kullanabileceğiniz komutlar açıklanmaktadır. Bu komutları Azure CLI kullanarak veya doğrudan Bicep CLI komutlarını çağırarak yürütebilirsiniz. Her yöntem ayrı bir yükleme işlemi gerektirir. Yüklemeler hakkında daha fazla bilgi için bkz . Azure CLI ve Azure PowerShell.

Bu kılavuz, Azure CLI'da komutların nasıl çalıştırılacaklarını gösterir. Azure CLI'da komutları çalıştırırken ile azbaşlatın. Azure CLI kullanmıyorsanız, komutları her birinin başında olmadan az çalıştırın. Örneğin, az bicep build olur bicep buildve az bicep version olur bicep --version.

derleme

Komut, build bicep dosyasını JSON Azure Resource Manager şablonuna (ARM şablonu) dönüştürür. Genellikle, bir Bicep dosyası dağıttığınızda otomatik olarak çalıştığından bu komutu çalıştırmanız gerekmez. Bicep dosyanızdan oluşturulan JSON ARM şablonunu görmek istediğinizde el ile çalıştırın.

Aşağıdaki Bicep özelliklerinden herhangi birinin kullanılması, dil sürümü 2.0 kod oluşturmayı otomatik olarak etkinleştirir:

Aşağıdaki örnek main.bicep adlı bicep dosyasını main.json adlı arm şablonuna dönüştürür. Yeni dosya, Bicep dosyasıyla aynı dizinde oluşturulur:

az bicep build --file main.bicep

Sonraki örnek, main.json farklı bir dizine kaydeder:

az bicep build --file main.bicep --outdir c:\jsontemplates

Sonraki örnek, oluşturulacak dosyanın adını ve konumunu belirtir:

az bicep build --file main.bicep --outfile c:\jsontemplates\azuredeploy.json

dosyasını 'a yazdırmak için stdoutşunu kullanın:

az bicep build --file main.bicep --stdout

Bicep dosyanız dış kayıt defterine başvuran bir modül içeriyorsa, build komutu otomatik olarak öğesini çağırır restore. komutu restore dosyayı kayıt defterinden alır ve yerel önbellekte depolar.

Not

Komut restore önbelleği yenilemez. Daha fazla bilgi için bkz . geri yükleme.

Geri yüklemeyi otomatik olarak çağırmamak için şu anahtarı kullanın --no-restore :

az bicep build --no-restore <bicep-file>

Dış modüllerden biri henüz önbelleğe alınmadıysa anahtarla --no-restore derleme işlemi başarısız olur:

The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" hasn't been restored.

Bu hatayı aldığınızda, anahtarı olmadan komutunu çalıştırın build veya önce komutunu çalıştırınbicep restore.--no-restore

Anahtarı kullanmak --no-restore için Bicep CLI 0.4.X veya sonraki bir sürümüne sahip olmanız gerekir.

build-params

build-params komutu bir JSON parametre dosyasına bir .bicepparam dosya oluşturur:

az bicep build-params --file params.bicepparam

Bu komut bir params.bicepparam parametre dosyasını params.json JSON parametre dosyasına dönüştürür.

Decompile

decompile komutu bir JSON ARM şablonunu Bicep dosyasına dönüştürür:

az bicep decompile --file main.json

Bu komut, main.json ile aynı dizinde main.bicep adlı bir dosya oluşturur. Main.bicep aynı dizinde varsa var olan Bicep dosyasının üzerine yazmak için --force anahtarını kullanın.

Bu komutu kullanma hakkında daha fazla bilgi için bkz . JSON ARM şablonunu Bicep'e derleme.

decompile-params

decompile-params komutu bir JSON parametre dosyasını parametre .bicepparam dosyasına koda ayırır.

az bicep decompile-params --file azuredeploy.parameters.json --bicep-file ./dir/main.bicep

Bu komut, bir azuredeploy.parameters.json parametre dosyasını azuredeploy.parameters.bicepparam dosyasına ayırır. --bicep-filebildirimde başvuruda using bulunılan Bicep dosyasının yolunu (dosyaya .bicepparam göre) belirtir.

format

format komutu bir Bicep dosyasını biçimlendirer. Visual Studio Code'daki kısayolla SHIFT+ALT+F aynı işleve sahiptir.

az bicep format --file main.bicep

generate-params

generate-params komutu verilen Bicep dosyasından bir parametre dosyası oluşturur, mevcut bir parametre dosyası varsa güncelleştirilir.

az bicep generate-params --file main.bicep --output-format bicepparam --include-params all

Bu komut main.bicepparam adlı bir Bicep parametre dosyası oluşturur. Parametre dosyası, varsayılan değerlerle yapılandırılsa da yapılandırılmasa da Bicep dosyasındaki tüm parametreleri içerir.

az bicep generate-params --file main.bicep --outfile main.parameters.json

Bu komut, main.parameters.json adlı bir parametre dosyası oluşturur. Parametre dosyası yalnızca Bicep dosyasında yapılandırılmış varsayılan değerleri olmayan parametreleri içerir.

yükle

install Komut, Bicep CLI'yi yerel ortamınıza ekler ve yalnızca Azure CLI aracılığıyla kullanılabilir. Daha fazla bilgi için bkz . Bicep araçlarını yükleme.

En son sürümü yüklemek için şunu kullanın:

az bicep install

Belirli bir sürümü yüklemek için:

az bicep install --version v0.3.255

jsonrpc

Komutu jsonrpc , Bicep CLI'nin bir JSON-RPC arabirimiyle çalıştırılmasını sağlayarak yapılandırılmış çıkışla programlı etkileşime olanak tanır ve birden çok dosya derlenirken soğuk başlatma gecikmelerini önler. Bu kurulum, non-.NET dillerde program aracılığıyla Bicep dosyalarıyla etkileşim kurmak için kitaplıklar oluşturmayı da destekler.

Giriş/çıkış gönderme ve alma için kablo biçimi, satır başı ve satır besleme karakterlerinin bulunduğu ve \n temsil ettiği \r aşağıdaki yapı kullanılarak üst bilgiyle sınırlandırılır:

Content-Length: <length>\r\n\r\n<message>\r\n\r\n
  • <length> , sonundaki <message>\r\n\r\ndahil olmak üzere dizenin uzunluğudur.
  • <message> ham JSON iletisidir.

Örneğin:

Content-Length: 72\r\n\r\n{"jsonrpc": "2.0", "id": 0, "method": "bicep/version", "params": {}}\r\n\r\n

Aşağıdaki iletide Bicep sürümü örneği gösterilmektedir.

  • Giriş:

    {
      "jsonrpc": "2.0",
      "id": 0,
      "method": "bicep/version",
      "params": {}
    }
    
  • Çıkış:

    {
      "jsonrpc": "2.0",
      "id": 0,
      "result": {
        "version": "0.24.211"
      }
    }
    

Kullanılabilir yöntemler ve istek/yanıt gövdeleri için bkz ICliJsonRpcProtocol.cs. . JSONRPC bağlantısı kurma ve Node kullanarak Bicep dosyalarıyla program aracılığıyla etkileşim kurma örneği için bkz jsonrpc.test.ts. .

Adlandırılmış kanal kullanımı

Mevcut bir adlandırılmış kanala JSONRPC istemcisi olarak bağlanmak için aşağıdaki söz dizimini kullanın:

bicep jsonrpc --pipe <named_pipe>`

<named_pipe> , JSONRPC istemcisini bağlamak için mevcut adlandırılmış bir kanaldır.

OSX/Linux üzerinde adlandırılmış bir kanala bağlanmak için:

bicep jsonrpc --pipe /tmp/bicep-81375a8084b474fa2eaedda1702a7aa40e2eaa24b3.sock

Windows'da adlandırılmış bir kanala bağlanmak için:

bicep jsonrpc --pipe \\.\pipe\\bicep-81375a8084b474fa2eaedda1702a7aa40e2eaa24b3.sock`

Daha fazla örnek için bkz . C# ve node.js.

TCP yuvası kullanımı

Mevcut bir TCP yuvasına JSONRPC istemcisi olarak bağlanmak için aşağıdaki söz dizimini kullanın:

bicep jsonrpc --socket <tcp_socket>

<tcp_socket> JSONRPC istemcisinin bağlandığı yuva numarasıdır.

TCP yuvasına bağlanmak için:

bicep jsonrpc --socket 12345

stdin ve stdout kullanımı

JSONRPC arabirimini çalıştırmak için aşağıdaki söz dizimini ve stdinstdout iletilerini kullanın:

bicep jsonrpc --stdio

Lint

komutu, lint Bicep dosyasının hatalarını ve linter kuralı ihlallerini döndürür.

az bicep lint --file main.bicep

Bicep dosyanız dış kayıt defterine başvuran bir modül içeriyorsa, lint komutu otomatik olarak öğesini çağırır restore. komutu restore dosyayı kayıt defterinden alır ve yerel önbellekte depolar.

Not

Komut restore önbelleği yenilemez. Daha fazla bilgi için bkz . geri yükleme.

Geri yüklemeyi otomatik olarak çağırmamak için şu anahtarı kullanın --no-restore :

az bicep lint --no-restore <bicep-file>

Dış modüllerden biri henüz önbelleğe alınmadıysa anahtarla --no-restore lint işlemi başarısız olur:

The module with reference "br:exampleregistry.azurecr.io/bicep/modules/storage:v1" has not been restored.

Bu hatayı aldığınızda, komutunu anahtar olmadan --no-restore çalıştırın lint veya önce çalıştırınbicep restore.

liste sürümleri

Komut, list-versions Bicep CLI'nın tüm kullanılabilir sürümlerini döndürür. Yeni bir sürümü yükseltmek mi yoksa yüklemek mi istediğinizi görmek için bu komutu kullanın. Bu komut yalnızca Azure CLI aracılığıyla kullanılabilir.

az bicep list-versions

komut, kullanılabilir sürümlerin bir dizisini döndürür:

[
  "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"
]

publish

publish komutu kayıt defterine bir modül ekler. Azure kapsayıcı kayıt defteri mevcut olmalı ve kayıt defterinde yayımlama hesabı doğru izinlere sahip olmalıdır. Modül kayıt defteri ayarlama hakkında daha fazla bilgi için bkz . Bicep modülleri için özel kayıt defteri kullanma. Modülü yayımlamak için hesabın kayıt defterine erişmek için doğru profile ve izinlere sahip olması gerekir. Bicep yapılandırma dosyasında kayıt defterinde kimlik doğrulaması yapmak için profil ve kimlik bilgisi önceliğini yapılandırabilirsiniz.

Dosyayı kayıt defterinde yayımladıktan sonra bir modülde başvurabilirsiniz.

komutunu ve/--documentationUri-d parametresini kullanmak publish için Bicep CLI sürüm 0.14.X veya üzeri olmalıdır.

Bir modülü kayıt defterinde yayımlamak için şunu kullanın:

az bicep publish --file <bicep-file> --target br:<registry-name>.azurecr.io/<module-path>:<tag> --documentationUri <documentation-uri>

Örneğin:

az bicep publish --file storage.bicep --target br:exampleregistry.azurecr.io/bicep/modules/storage:v1 --documentationUri https://www.contoso.com/exampleregistry.html

Komut, publish bicepconfig.json dosyasında belirtilen diğer adları tanımıyor. Tam modül yolunu belirtin.

Uyarı

Aynı hedefe yayımlamak eski modülün üzerine yazar. Güncelleştirme sırasında sürümü artırmanızı öneririz.

geri yükleme

Bicep dosyanız bir kayıt defterinde yayımlanan modülleri kullandığında restore , komut kayıt defterinden tüm gerekli modüllerin kopyalarını alır. Bu kopyaları yerel önbellekte depolar. Bicep dosyası yalnızca dış dosyalar yerel önbellekte kullanılabilir olduğunda oluşturulabilir. Normalde, derleme işlemi tarafından otomatik olarak tetiklendiğinden geri yüklemeyi çalıştırmak gerekli değildir.

Dış modülleri yerel önbelleğe geri yüklemek için hesabın kayıt defterine erişmek için doğru profile ve izinlere sahip olması gerekir. Bicep yapılandırma dosyasında kayıt defterinde kimlik doğrulaması yapmak için profil ve kimlik bilgisi önceliğini yapılandırabilirsiniz.

komutunu kullanmak restore için Bicep CLI 0.14.X veya sonraki bir sürümüne sahip olmanız gerekir. Şu anda bu komut yalnızca doğrudan Bicep CLI çağrılırken kullanılabilir. Şu anda Azure CLI üzerinden kullanılamamaktadır.

Bir dosyanın dış modüllerini el ile geri yüklemek için şunu kullanın:

az bicep restore --file <bicep-file> [--force]

Sağladığınız Bicep dosyası, dağıtmak istediğiniz dosyadır. Kayıt defterine bağlanan bir modül içermelidir. Örneğin, aşağıdaki dosyayı geri yükleyebilirsiniz:

module stgModule 'br:exampleregistry.azurecr.io/bicep/modules/storage:v1' = {
  name: 'storageDeploy'
  params: {
    storagePrefix: 'examplestg1'
  }
}

Yerel önbellek şu şekilde bulunur:

  • Windows üzerinde

    %USERPROFILE%\.bicep\br\<registry-name>.azurecr.io\<module-path\<tag>
    
  • Linux'ta

    /home/<username>/.bicep
    
  • Mac'te

    ~/.bicep
    

Bir restore modül zaten önbelleğe alınmışsa komut önbelleği yenilemez. Önbelleği yenilemek için modül yolunu önbellekten silebilir veya komutuyla restore anahtarı kullanabilirsiniz--force.

yükseltme

Komut, upgrade yüklü sürümünüzü en son sürümle güncelleştirir. Bu komut yalnızca Azure CLI aracılığıyla kullanılabilir.

az bicep upgrade

sürüm

Komut version , yüklü sürümünüzü döndürür:

az bicep version

Komut, sürüm numarasını gösterir:

Bicep CLI version 0.22.6 (d62b94db31)

Bu komutu doğrudan Bicep CLI aracılığıyla çağırmak için şunu kullanın:

bicep --version

Bicep CLI yüklenmediyse, Bicep CLI'nin bulunamadığını belirten bir hata iletisi görürsünüz.

Sonraki adımlar

Bicep dosyası dağıtma hakkında daha fazla bilgi edinmek için bkz: