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. Dostępne są dwie opcje wykonywania tych poleceń: 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, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure i Instalowanie programu Azure PowerShell.

W tym artykule pokazano, jak uruchamiać polecenia w interfejsie wiersza polecenia platformy Azure. Uruchamiając interfejs wiersza polecenia platformy Azure, uruchamiasz polecenia za pomocą azpolecenia . Jeśli nie używasz interfejsu wiersza polecenia platformy Azure, uruchom polecenia bez az na początku polecenia. 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 (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ć kod JSON szablonu usługi ARM 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, polecenie kompilacji automatycznie wywołuje funkcję przywracania. Polecenie przywracania pobiera plik z rejestru i zapisuje go w lokalnej pamięci podręcznej.

Uwaga

Polecenie przywracania 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" has not 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 plik bicepparam do 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 kod JSON szablonu usługi ARM na plik Bicep.

az bicep decompile --file main.json

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 Decompiling ARM template JSON to Bicep (Decompiling ARM template JSON to Bicep).

dekompiluj-params

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

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 pliku .bicepparam), który jest przywoływał w deklaracji using .

format

Polecenie format sformatuje 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

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

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. Aby uzyskać więcej informacji, zobacz Instalowanie narzędzi Bicep. To polecenie jest dostępne tylko za pośrednictwem interfejsu wiersza polecenia platformy Azure.

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 poniższej 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 umożliwiający połączenie klienta JSONRPC z.

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, aby uruchomić interfejs JSONRPC przy użyciu stdin & stdout dla komunikatów.

bicep jsonrpc --stdio

Lint

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

az bicep lint --file main.bicep

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

Uwaga

Polecenie przywracania 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 publish, musisz mieć interfejs wiersza polecenia Bicep w wersji 0.14.X lub nowszej. Aby użyć parametru --documentationUri/-d , musisz mieć interfejs wiersza polecenia Bicep w wersji 0.14.X lub nowszej.

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ć polecenia restore, musisz mieć interfejs wiersza polecenia Bicep w wersji 0.4.X lub nowszej. To polecenie jest obecnie dostępne tylko podczas bezpośredniego wywoływania interfejsu wiersza polecenia Bicep. Obecnie nie jest ona dostępna za pomocą polecenia 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 o wdrażaniu pliku Bicep, zobacz: