Udostępnij za pośrednictwem


Polecenia interfejsu wiersza polecenia Bicep

W tym artykule opisano polecenia, których można użyć w interfejsie wiersza polecenia Bicep. Te polecenia można wykonać przy użyciu interfejsu wiersza polecenia platformy Azure lub bezpośrednio wywołując polecenia interfejsu wiersza polecenia Bicep. Każda metoda wymaga odrębnego procesu instalacji. Aby uzyskać więcej informacji na temat instalacji, zobacz Interfejs wiersza polecenia platformy Azure i program Azure PowerShell.

W tych wskazówkach pokazano, jak uruchamiać polecenia w interfejsie wiersza polecenia platformy Azure. Podczas uruchamiania poleceń w interfejsie wiersza polecenia platformy Azure uruchom je za pomocą polecenia az. Jeśli nie używasz interfejsu wiersza polecenia platformy Azure, uruchom polecenia bez az na początku każdego z nich. Na przykład az bicep build staje się bicep build, a az bicep version staje się .bicep --version

build

Polecenie build konwertuje plik Bicep na szablon usługi Azure Resource Manager w formacie JSON (szablon usługi ARM). Zazwyczaj nie trzeba uruchamiać tego polecenia, ponieważ jest on uruchamiany automatycznie podczas wdrażania pliku Bicep. Uruchom go ręcznie, gdy chcesz zobaczyć szablon usługi ARM JSON utworzony na podstawie pliku Bicep.

Użycie dowolnych z następujących funkcji Bicep automatycznie włącza generowanie kodu w wersji 2.0 języka:

Poniższy przykład konwertuje plik Bicep o nazwie main.bicep na szablon usługi ARM o nazwie main.json. Nowy plik jest tworzony w tym samym katalogu co plik Bicep:

az bicep build --file main.bicep

Następny przykład zapisuje main.json w innym katalogu:

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

W następnym przykładzie określono nazwę i lokalizację pliku do utworzenia:

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

Aby wydrukować plik w pliku stdout, użyj polecenia :

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

Jeśli plik Bicep zawiera moduł odwołujący się do rejestru zewnętrznego, build polecenie automatycznie wywołuje polecenie restore. Polecenie restore pobiera plik z rejestru i zapisuje go w lokalnej pamięci podręcznej.

Uwaga

Polecenie restore nie odświeża pamięci podręcznej. Aby uzyskać więcej informacji, zobacz przywracanie.

Aby nie wywoływać przywracania automatycznie, użyj przełącznika --no-restore :

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

Proces kompilacji z przełącznikiem kończy się niepowodzeniem --no-restore , jeśli jeden z modułów zewnętrznych nie jest jeszcze buforowany:

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

Po wystąpieniu tego błędu uruchom build polecenie bez przełącznika --no-restore lub uruchom bicep restore polecenie jako pierwsze.

Aby użyć przełącznika --no-restore , musisz mieć interfejs wiersza polecenia Bicep w wersji 0.4.X lub nowszej.

parametry kompilacji

Polecenie build-params kompiluje .bicepparam plik w pliku parametrów JSON:

az bicep build-params --file params.bicepparam

To polecenie konwertuje plik parametrów params.bicepparam na plik parametrów JSON params.json .

Dekompilować

Polecenie decompile konwertuje szablon arm JSON na plik Bicep:

az bicep decompile --file main.json

To polecenie tworzy plik o nazwie main.bicep w tym samym katalogu co main.json. Jeśli plik main.bicep istnieje w tym samym katalogu, użyj przełącznika --force , aby zastąpić istniejący plik Bicep.

Aby uzyskać więcej informacji na temat korzystania z tego polecenia, zobacz Decompile JSON ARM template to Bicep (Decompile JSON ARM template to Bicep).

dekompiluj-params

Polecenie decompile-params dekompiluje plik parametrów JSON do .bicepparam pliku parametrów.

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

To polecenie dekompiluje plik parametrów azuredeploy.parameters.json do pliku azuredeploy.parameters.bicepparam . --bicep-file określa ścieżkę do pliku Bicep (względem .bicepparam pliku), do którego odwołuje using się deklaracja.

format

Polecenie format formatuje plik Bicep. Ma tę samą funkcję co SHIFT+ALT+F skrót w programie Visual Studio Code.

az bicep format --file main.bicep

generate-params

Polecenie generate-params tworzy plik parametrów z danego pliku Bicep, aktualizuje, jeśli istnieje istniejący plik parametrów.

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

To polecenie tworzy plik parametrów Bicep o nazwie main.bicepparam. Plik parameters zawiera wszystkie parametry w pliku Bicep, niezależnie od tego, czy jest skonfigurowany z wartościami domyślnymi, czy nie.

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

To polecenie tworzy plik parametrów o nazwie main.parameters.json. Plik parametrów zawiera tylko parametry bez wartości domyślnych skonfigurowanych w pliku Bicep.

instalacja

Polecenie install dodaje interfejs wiersza polecenia Bicep do środowiska lokalnego i jest dostępny tylko za pośrednictwem interfejsu wiersza polecenia platformy Azure. Aby uzyskać więcej informacji, zobacz Instalowanie narzędzi Bicep.

Aby zainstalować najnowszą wersję, użyj:

az bicep install

Aby zainstalować określoną wersję:

az bicep install --version v0.3.255

jsonrpc

Polecenie jsonrpc umożliwia uruchomienie interfejsu wiersza polecenia Bicep za pomocą interfejsu JSON-RPC, co umożliwia programową interakcję ze strukturą danych wyjściowych i unikanie opóźnień zimnego startu podczas kompilowania wielu plików. Ta konfiguracja obsługuje również programowe interakcje z plikami Bicep w non-.NET językach.

Format przewodu do wysyłania i odbierania danych wejściowych/wyjściowych jest rozdzielany nagłówkami przy użyciu następującej struktury, gdzie \r i \n reprezentują znaki powrotu karetki i wiersza:

Content-Length: <length>\r\n\r\n<message>\r\n\r\n
  • <length> to długość <message> ciągu, w tym ciąg końcowy \r\n\r\n.
  • <message> to nieprzetworzona wiadomość JSON.

Na przykład:

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

Poniższy komunikat przedstawia przykład wersji Bicep.

  • Dane wejściowe:

    {
      "jsonrpc": "2.0",
      "id": 0,
      "method": "bicep/version",
      "params": {}
    }
    
  • Dane wyjściowe:

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

Aby uzyskać dostępne metody i treść żądania/odpowiedzi, zobacz ICliJsonRpcProtocol.cs. Aby zapoznać się z przykładem nawiązywania połączenia JSONRPC i programowego korzystania z plików Bicep przy użyciu węzła, zobacz jsonrpc.test.ts.

Użycie nazwanego potoku

Użyj następującej składni, aby nawiązać połączenie z istniejącym nazwanym potokiem jako klientem JSONRPC:

bicep jsonrpc --pipe <named_pipe>`

<named_pipe> to istniejący nazwany potok do połączenia klienta JSONRPC z.

Aby nawiązać połączenie z nazwanym potokiem w systemie OSX/Linux:

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

Aby nawiązać połączenie z nazwanym potokiem w systemie Windows:

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

Aby uzyskać więcej przykładów, zobacz C# i node.js.

Użycie gniazda TCP

Użyj następującej składni, aby nawiązać połączenie z istniejącym gniazdem TCP jako klientem JSONRPC:

bicep jsonrpc --socket <tcp_socket>

<tcp_socket> to numer gniazda, z którym łączy się klient JSONRPC.

Aby nawiązać połączenie z gniazdem TCP:

bicep jsonrpc --socket 12345

Użycie dla stdin i stdout

Użyj następującej składni i polecenia dla stdin stdout komunikatów, aby uruchomić interfejs JSONRPC:

bicep jsonrpc --stdio

Lint

Polecenie lint zwraca błędy i naruszenia reguł linter pliku Bicep.

az bicep lint --file main.bicep

Jeśli plik Bicep zawiera moduł odwołujący się do rejestru zewnętrznego, lint polecenie automatycznie wywołuje polecenie restore. Polecenie restore pobiera plik z rejestru i zapisuje go w lokalnej pamięci podręcznej.

Uwaga

Polecenie restore nie odświeża pamięci podręcznej. Aby uzyskać więcej informacji, zobacz przywracanie.

Aby nie wywoływać przywracania automatycznie, użyj przełącznika --no-restore :

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

Proces lint z przełącznikiem kończy się niepowodzeniem --no-restore , jeśli jeden z modułów zewnętrznych nie jest jeszcze buforowany:

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

Po wystąpieniu tego błędu uruchom lint polecenie bez przełącznika --no-restore lub uruchom bicep restore polecenie jako pierwsze.

list-versions

Polecenie list-versions zwraca wszystkie dostępne wersje interfejsu wiersza polecenia Bicep. Użyj tego polecenia, aby sprawdzić, czy chcesz uaktualnić lub zainstalować nową wersję. To polecenie jest dostępne tylko za pośrednictwem interfejsu wiersza polecenia platformy Azure.

az bicep list-versions

Polecenie zwraca tablicę dostępnych wersji:

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

Polecenie publish dodaje moduł do rejestru. Rejestr kontenerów platformy Azure musi istnieć, a konto publikowania w rejestrze musi mieć odpowiednie uprawnienia. Aby uzyskać więcej informacji na temat konfigurowania rejestru modułów, zobacz Używanie rejestru prywatnego dla modułów Bicep. Aby opublikować moduł, konto musi mieć prawidłowy profil i uprawnienia dostępu do rejestru. Możesz skonfigurować pierwszeństwo profilu i poświadczeń na potrzeby uwierzytelniania w rejestrze w pliku konfiguracji Bicep.

Po opublikowaniu pliku w rejestrze można odwoływać się do niego w module.

Aby użyć polecenia i parametru, musisz mieć interfejs wiersza polecenia Bicep w wersji 0.14.X lub nowszej--documentationUri/-d.publish

Aby opublikować moduł w rejestrze, użyj:

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

Na przykład:

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

Polecenie publish nie rozpoznaje aliasów określonych w pliku bicepconfig.json. Podaj pełną ścieżkę modułu.

Ostrzeżenie

Publikowanie w tym samym obiekcie docelowym zastępuje stary moduł. Zalecamy zwiększanie wersji podczas aktualizowania.

Przywracanie

Gdy plik Bicep używa modułów publikowanych w rejestrze, restore polecenie pobiera kopie wszystkich wymaganych modułów z rejestru. Przechowuje te kopie w lokalnej pamięci podręcznej. Plik Bicep można skompilować tylko wtedy, gdy pliki zewnętrzne są dostępne w lokalnej pamięci podręcznej. Zwykle uruchamianie przywracania nie jest konieczne, ponieważ jest ono automatycznie wyzwalane przez proces kompilacji.

Aby przywrócić moduły zewnętrzne do lokalnej pamięci podręcznej, konto musi mieć prawidłowy profil i uprawnienia dostępu do rejestru. Możesz skonfigurować pierwszeństwo profilu i poświadczeń na potrzeby uwierzytelniania w rejestrze w pliku konfiguracji Bicep.

Aby użyć restore polecenia , musisz mieć interfejs wiersza polecenia Bicep w wersji 0.14.X lub nowszej. Obecnie to polecenie jest dostępne tylko podczas bezpośredniego wywoływania interfejsu wiersza polecenia Bicep. Obecnie nie jest ona dostępna za pośrednictwem interfejsu wiersza polecenia platformy Azure.

Aby ręcznie przywrócić moduły zewnętrzne dla pliku, użyj:

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

Plik Bicep, który podajesz, to plik, który chcesz wdrożyć. Musi zawierać moduł, który łączy się z rejestrem. Można na przykład przywrócić następujący plik:

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

Lokalna pamięć podręczna znajduje się w:

  • W systemie Windows

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

    /home/<username>/.bicep
    
  • Na komputerze Mac

    ~/.bicep
    

Polecenie restore nie odświeża pamięci podręcznej, jeśli moduł jest już buforowany. Aby odświeżyć pamięć podręczną, możesz usunąć ścieżkę modułu z pamięci podręcznej lub użyć przełącznika --force restore za pomocą polecenia .

uaktualnienie

Polecenie upgrade aktualizuje zainstalowaną wersję przy użyciu najnowszej wersji. To polecenie jest dostępne tylko za pośrednictwem interfejsu wiersza polecenia platformy Azure.

az bicep upgrade

version

Polecenie version zwraca zainstalowaną wersję:

az bicep version

Polecenie wyświetla numer wersji:

Bicep CLI version 0.22.6 (d62b94db31)

Aby wywołać to polecenie bezpośrednio za pomocą interfejsu wiersza polecenia Bicep, użyj:

bicep --version

Jeśli interfejs wiersza polecenia Bicep nie został zainstalowany, zostanie wyświetlony komunikat o błędzie z informacją, że interfejs wiersza polecenia Bicep nie został znaleziony.

Następne kroki

Aby dowiedzieć się więcej na temat wdrażania pliku Bicep, zobacz: