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ą az
polecenia . 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:
- typy zdefiniowane przez użytkownika
- funkcje zdefiniowane przez użytkownika
- Importy w czasie kompilacji
- funkcje eksperymentalne
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: