swa
Polecenia
Nazwa | Opis | Typ | Stan |
---|---|---|---|
swa login |
Logowanie się do platformy Azure |
SWA Core | Ogólna dostępność |
swa build |
Kompiluje aplikację. Jeśli masz aplikację Node.js, najpierw zainstaluje zależności. |
SWA Core | Ogólna dostępność |
swa start |
Uruchom emulator usługi Azure Static Web Apps z katalogu lub powiąż z uruchomionym serwerem deweloperskim. |
SWA Core | Ogólna dostępność |
swa deploy |
Wdróż bieżący projekt w usłudze Azure Static Web Apps. |
SWA Core | Ogólna dostępność |
swa db |
Generuj i edytuj konfigurację połączeń bazy danych usługi Static Web Apps. |
SWA Core | Ogólna dostępność |
swa login
Logowanie się do platformy Azure
Uwierzytelnianie za pomocą platformy Azure w celu uzyskania tokenu wdrożenia dla usługi Azure Static Web Apps przy użyciu swa deploy
polecenia .
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Przykłady
Logowanie interakcyjne na platformie Azure
swa login
Parametry opcjonalne
Identyfikator subskrypcji platformy Azure używany przez ten projekt. Wartość domyślna to process.env.AZURE_SUBSCRIPTION_ID
.
Nazwa grupy zasobów. Grupę domyślną można skonfigurować przy użyciu polecenia az configure --defaults group=<name>
.
Identyfikator dzierżawy platformy Azure. Wartość domyślna to process.env.AZURE_TENANT_ID
.
Identyfikator klienta platformy Azure.
Wpis tajny klienta platformy Azure.
Nazwa aplikacji Usługi Azure Static Web Apps.
Wyczyść utrwalone poświadczenia przed zalogowaniem. Wartość domyślna to false
.
Użyj natywnego łańcucha kluczy systemu operacyjnego w celu uzyskania trwałych poświadczeń. Wartość domyślna to true
.
Wyłącz użycie natywnego łańcucha kluczy systemu operacyjnego.
Parametry globalne
Wyświetl numer wersji.
Włącz pełne dane wyjściowe. Wartości poziomu obejmują silly
, , info
( log
wartość domyślna) i silent
.
Ścieżka do pliku swa-cli.config.json.
Konfiguracja używana przez interfejs wiersza polecenia.
Drukuj wszystkie rozwiązane opcje. Wartość domyślna to false
.
Pokaż pomoc kontekstową.
swa init
Konfiguruje nowy projekt usługi Azure Static Web Apps.
Konfiguruje nowy projekt usługi Azure Static Web Apps za pomocą interfejsu wiersza polecenia usługi Static Web Apps. Tryb interaktywny wyświetla monit o podanie nazwy konfiguracji, wykryje ustawienia projektu i używane platformy. Po zakończeniu zostanie utworzona nowa statyczna aplikacja internetowa, a plik swa-cli.config.json zostanie wygenerowany w bieżącym katalogu.
Możesz uruchomić swa init
wiele razy, aby utworzyć różne konfiguracje dla projektu. Możesz to zrobić, jeśli pracujesz nad monorepo i chcesz skonfigurować różne projekty.
Wygenerowany plik konfiguracji jest używany w każdym poleceniu uruchamianym za pomocą interfejsu wiersza polecenia usługi Static Web Apps. Jeśli masz wiele nazwanych konfiguracji, możesz użyć argumentu pozycyjnego lub --config-name
opcji, aby określić konfigurację, której chcesz użyć.
Poniżej przedstawiono przykładową konfigurację wygenerowaną przez init
polecenie :
"$schema": "https://aka.ms/azure/static-web-apps-cli/schema",
"configurations": {
"myApp": {
"appLocation": ".",
"apiLocation": "api",
"outputLocation": "dist",
"appBuildCommand": "npm run build",
"apiBuildCommand": "npm run build --if-present",
"run": "npm run dev",
"appDevserverUrl": "http://localhost:8080"
}
}
} ```
swa init
[--yes]
Przykłady
Utwórz nową konfigurację interaktywnie.
swa init
Utwórz nową konfigurację przy użyciu wartości domyślnych dla wszystkich opcji.
swa init --yes
Zainicjuj projekt przy użyciu konfiguracji o nazwie "myApp" z pliku swa-cli.config.json.
swa init --config-name myApp
Parametry opcjonalne
Odpowiedzi "tak" na wszystkie monity, które wyłącza tryb interaktywny. Wartość domyślna to false
.
Parametry globalne
Wyświetl numer wersji.
Włącz pełne dane wyjściowe. Wartości poziomu obejmują silly
, , info
( log
wartość domyślna) i silent
.
Ścieżka do pliku swa-cli.config.json.
Konfiguracja używana przez interfejs wiersza polecenia.
Drukuj wszystkie rozwiązane opcje. Wartość domyślna to false
.
Pokaż pomoc kontekstową.
swa start
Uruchom emulator usługi Azure Static Web Apps z katalogu lub powiąż z uruchomionym serwerem deweloperskim.
Obsługa z folderu
Domyślnie interfejs wiersza polecenia uruchamia i obsługuje dowolną zawartość statyczną z bieżącego katalogu ./
roboczego :
swa start
Jeśli folder artefaktu aplikacji statycznej znajduje się w innym folderze (na przykład ./my-dist
), uruchom interfejs wiersza polecenia i podaj ten folder:
swa start ./my-dist
Obsługa z serwera deweloperskiego
Podczas lokalnego tworzenia aplikacji frontonu często przydaje się użycie serwera deweloperskiego, który jest dostarczany z interfejsem wiersza polecenia platformy frontonu. Korzystanie z interfejsu wiersza polecenia platformy umożliwia korzystanie z wbudowanych funkcji, takich jak "livereload" i HMR (wymiana gorącego modułu). Aby użyć interfejsu wiersza polecenia swa z lokalnym serwerem deweloperskim, wykonaj następujące dwa kroki:
- Uruchom lokalny serwer deweloperski w zwykły sposób. Jeśli na przykład używasz platformy Angular:
ng serve
(lubnpm start
). - W osobnym terminalu uruchom
swa start
polecenie z identyfikatorem URI dostarczonym przez serwer deweloperski w następującym formacie:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Oto lista domyślnych portów i poleceń używanych przez niektóre popularne serwery deweloperskie:
Narzędzie | Port | Polecenie |
---|---|---|
Angular | 4200 |
swa start http://localhost:4200 |
Blazor WebAssembly | 5000 |
swa start http://localhost:5000 |
Gatsby | 8000 |
swa start http://localhost:8000 |
Hugo | 1313 |
swa start http://localhost:1313 |
Next.js | 3000 |
swa start http://localhost:3000 |
React (tworzenie aplikacji React) | 3000 |
swa start http://localhost:3000 |
Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
Vue | 3000 |
swa start http://localhost:3000 |
Zamiast oddzielnie uruchamiać serwer deweloperski, możesz podać polecenie uruchamiania do interfejsu wiersza polecenia.
# npm start script (React)
swa start http://localhost:3000 --run "npm start"
# dotnet watch (Blazor)
swa start http://localhost:5000 --run "dotnet watch run"
# Jekyll
swa start http://localhost:4000 --run "jekyll serve"
# custom script
swa start http://localhost:4200 --run "./startup.sh"
Następnie uzyskaj dostęp do aplikacji za pomocą emulowanych usług z programu http://localhost:4280
Obsługa zarówno aplikacji frontonu, jak i interfejsu API
Jeśli projekt zawiera funkcje interfejsu API, interfejs wiersza polecenia sprawdzi, czy narzędzia Azure Functions Core Tools są zainstalowane i dostępne. Jeśli nie, interfejs wiersza polecenia pobierze i zainstaluje odpowiednią wersję narzędzi Azure Functions Core Tools.
Automatyczne uruchamianie serwera interfejsu API
Uruchom interfejs wiersza polecenia i podaj folder zawierający zaplecze interfejsu API (prawidłowy projekt aplikacji usługi Azure Functions):
# static content plus an API
swa start ./my-dist --api-location ./api
# front-end dev server plus an API
swa start http://localhost:3000 --api-location ./api
Ręczne uruchamianie serwera interfejsu API
Podczas lokalnego tworzenia zaplecza warto uruchamiać narzędzia Azure Functions Core Tools oddzielnie w celu obsługi interfejsu API. Dzięki temu można używać wbudowanych funkcji, takich jak debugowanie i obsługa zaawansowanego edytora. Aby użyć interfejsu wiersza polecenia z lokalnym serwerem deweloperskim zaplecza interfejsu API, wykonaj następujące dwa kroki:
- Uruchom interfejs API przy użyciu narzędzi Azure Functions Core Tools:
func host start
lub rozpocznij debugowanie w programie VS Code. - W osobnym terminalu uruchom interfejs wiersza polecenia swa z flagą i identyfikatorem
--api-location
URI lokalnego serwera interfejsu API w następującym formacie:
swa start ./my-dist --api-location http://localhost:7071
Połączenia bazy danych
Aby uruchomić aplikację przy użyciu połączenia z bazą danych, użyj parametru --data-api-location
i wskaż folder zawierający plik staticwebapp.database.config.json.
swa start ./src --data-api-location swa-db-connections
Przykłady
Uruchom aplikację z wartościami domyślnymi.
swa start
Uruchom aplikację przy użyciu serwera deweloperskiego frontonu.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Uruchom aplikację przy użyciu frontonu i serwera deweloperskiego zaplecza.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Parametry opcjonalne
Folder zawierający kod źródłowy aplikacji frontonu. Wartość domyślna to .
.
Folder zawierający kod źródłowy aplikacji interfejsu API.
Folder zawierający wbudowane źródło aplikacji frontonu. Ścieżka jest względna względem --app-location
. Wartość domyślna to .
.
Folder zawierający plik staticwebapp.database.config.json .
Połącz się z serwerem deweloperskim aplikacji pod tym adresem URL zamiast używać lokalizacji wyjściowej.
Połącz się z serwerem interfejsu API pod tym adresem URL zamiast używać lokalizacji wyjściowej.
Port serwera interfejsu API przekazany do func start
. Wartość domyślna to 7071.
Adres hosta używany dla serwera deweloperskiego interfejsu wiersza polecenia. Wartość domyślna to localhost
.
Wartość portu do użycia dla serwera deweloperskiego interfejsu wiersza polecenia. Wartość domyślna 4280
.
Obsługa aplikacji frontonu i interfejsu API za pośrednictwem protokołu HTTPS. Wartość domyślna to false
.
Certyfikat SSL (crt) używany podczas włączania protokołu HTTPS.
Klucz SSL (.key) używany podczas włączania protokołu HTTPS.
Lokalizacja niestandardowego polecenia powłoki lub pliku skryptu do uruchomienia.
Czas oczekiwania (w sekundach) podczas nawiązywania połączenia z serwerem deweloperskim aplikacji frontonu lub serwerem interfejsu API. Wartość domyślna to 60.
Lokalizacja staticwebapp.config.json
katalogu pliku.
Otwórz przeglądarkę na serwerze deweloperskim. Wartość domyślna to „fałsz”.
Przekaż dodatkowe argumenty do func start
polecenia .
Parametry globalne
Wyświetl numer wersji.
Włącz pełne dane wyjściowe. Wartości poziomu obejmują silly
, , info
( log
wartość domyślna) i silent
.
Ścieżka do pliku swa-cli.config.json.
Konfiguracja używana przez interfejs wiersza polecenia.
Drukuj wszystkie rozwiązane opcje. Wartość domyślna to false
.
Pokaż pomoc kontekstową.
swa build
Kompiluje aplikację. Jeśli masz aplikację Node.js, najpierw zainstaluje zależności.
Typowe przypadki użycia to: instalowanie zależności dla aplikacji frontonu i interfejsu API oraz uruchamianie poleceń kompilacji dla obu tych elementów, tylko kompilowanie frontonu lub projektu interfejsu API, jeśli inny nie ma kroku kompilacji.
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Przykłady
Skompiluj aplikację i opcjonalnie zainstaluj zależności.
swa build
Wykrywanie sposobu kompilowania aplikacji i uruchamiania poleceń kompilacji po zainstalowaniu zależności.
swa build --auto
Instalowanie zależności dla aplikacji frontonu.
swa build --app-location ./client
Użyj konfiguracji o nazwie "myApp" w *swa-cli.config.json*, aby skompilować aplikację frontonu.
swa build myApp
Parametry opcjonalne
Folder zawierający kod źródłowy aplikacji frontonu. Wartość domyślna to .
.
Folder zawierający kod źródłowy aplikacji interfejsu API.
Folder zawierający wbudowane źródło aplikacji frontonu. Ta ścieżka jest względna względem --app-location
elementu . Wartość domyślna to .
.
Kompiluje aplikację frontonu.
Kompiluje aplikację interfejsu API.
Automatycznie wykrywa sposób tworzenia aplikacji frontonu i interfejsu API. Wartość domyślna to false
.
Parametry globalne
Wyświetl numer wersji.
Włącz pełne dane wyjściowe. Wartości poziomu obejmują silly
, , info
( log
wartość domyślna) i silent
.
Ścieżka do pliku swa-cli.config.json.
Konfiguracja używana przez interfejs wiersza polecenia.
Drukuj wszystkie rozwiązane opcje. Wartość domyślna to false
.
Pokaż pomoc kontekstową.
swa deploy
Wdróż bieżący projekt w usłudze Azure Static Web Apps.
Typowe przypadki użycia to:
- Wdrażanie aplikacji frontonu bez interfejsu API
- Wdrażanie aplikacji frontonu przy użyciu interfejsu API
- Wdrażanie aplikacji Platformy Blazor
Token wdrożenia
Interfejs wiersza polecenia swa obsługuje wdrażanie przy użyciu tokenu wdrożenia. Jest to często przydatne podczas wdrażania ze środowiska ciągłej integracji/ciągłego wdrażania. Token wdrożenia można pobrać z:
Witryna Azure Portal: strona główna → statycznej aplikacji internetowej → wystąpienie → — omówienie → Zarządzanie tokenem wdrożenia
Jeśli używasz interfejsu wiersza polecenia platformy Azure, możesz uzyskać token wdrożenia projektu przy użyciu następującego polecenia:
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
Jeśli używasz interfejsu wiersza polecenia usługi Azure Static Web Apps, możesz użyć następującego polecenia:
swa deploy --print-token
Następnie możesz użyć tej wartości z wartością
--deployment-token <TOKEN>
lub utworzyć zmienną środowiskową o nazwieSWA_CLI_DEPLOYMENT_TOKEN
i ustawić ją na token wdrożenia.Ważne: nie przechowuj tokenu wdrożenia w repozytorium publicznym. Ta wartość musi pozostać wpisem tajnym.
Wdrażanie aplikacji frontonu bez interfejsu API
Aplikację frontonu można wdrożyć bez interfejsu API w usłudze Azure Static Web Apps, wykonując następujące kroki:
- Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji.
Opcja 1. W folderze kompilacji, który chcesz wdrożyć, uruchom polecenie deploy:
cd build/
swa deploy
Uwaga:
build
folder musi zawierać zawartość statyczną aplikacji, którą chcesz wdrożyć. Opcja 2. Można również wdrożyć określony folder:
- Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji. - Wdróż aplikację:
swa deploy ./my-dist
Wdrażanie aplikacji frontonu za pomocą interfejsu API
Aby wdrożyć zarówno aplikację frontonu, jak i interfejs API w usłudze Azure Static Web Apps, wykonaj następujące kroki:
- Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji. - Upewnij się, że wersja środowiska uruchomieniowego języka interfejsu
staticwebapp.config.json
API w pliku jest poprawnie ustawiona, na przykład:
{
"platform": {
"apiRuntime": "node:16"
}
}
Uwaga: jeśli projekt nie ma żadnego
staticwebapp.config.json
pliku, dodaj go woutputLocation
folderze.
- Wdróż aplikację:
swa deploy ./my-dist --api-location ./api
Wdrażanie aplikacji Platformy Blazor
Aby wdrożyć aplikację Platformy Blazor z opcjonalnym interfejsem API w usłudze Azure Static Web Apps, wykonaj następujące kroki:
- Skompiluj aplikację Blazor w trybie wydania :
dotnet publish -c Release -o bin/publish
- W katalogu głównym projektu uruchom
deploy
polecenie :
swa deploy ./bin/publish/wwwroot --api-location ./Api
Wdrażanie przy użyciu narzędzia swa-cli.config.json
Uwaga: ścieżka dla
outputLocation
elementu musi być względna względem .appLocation
Jeśli używaszswa-cli.config.json
pliku konfiguracji w projekcie i masz pojedynczy wpis konfiguracji, użyj konfiguracji podobnej do następującej:
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Następnie możesz wdrożyć aplikację, wykonując następujące kroki:
- Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom
swa build
lub zapoznaj się z instrukcjami kompilacji aplikacji. - Wdróż aplikację:
swa deploy
Jeśli masz wiele wpisów konfiguracji, możesz podać identyfikator wpisu, aby określić, który z nich ma być używany:
swa deploy my-otherapp
swa deploy
[--yes]
Przykłady
Wdrażanie przy użyciu tokenu wdrożenia.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Wdrażanie przy użyciu tokenu wdrożenia ze zmiennych środowiskowych
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Wdrażanie przy użyciu pliku "swa-cli.config.json"
swa deploy swa deploy myconfig
Drukowanie tokenu wdrożenia
swa deploy --print-token
Wdrażanie w określonym środowisku
swa deploy --env production
Parametry globalne
Wyświetl numer wersji.
Włącz pełne dane wyjściowe. Wartości poziomu obejmują silly
, , info
( log
wartość domyślna) i silent
.
Ścieżka do pliku swa-cli.config.json.
Konfiguracja używana przez interfejs wiersza polecenia.
Drukuj wszystkie rozwiązane opcje. Wartość domyślna to false
.
Pokaż pomoc kontekstową.
swa db
Generuj i edytuj konfigurację połączeń bazy danych usługi Static Web Apps.
Służy swa db init
do generowania przykładowego folderu swa-db-connections wraz z plikiem konfiguracji staticwebapp.database.config.json . Jeśli używasz bazy danych Cosmos DB for NoSQL, spowoduje to również wygenerowanie przykładowego pliku schematu staticwebapp.database.schema.gql .
swa db init --database-type <DATABASE_TYPE>
Przykłady
Wygeneruj przykładowy folder konfiguracji połączenia bazy danych dla bazy danych Azure SQL Database.
swa db init --database-type mssql
Parametry opcjonalne
(Wymagane) Typ bazy danych, którą chcesz połączyć (mssql, postgresql, cosmosdb_nosql, mysql).
Nazwa folderu, aby zastąpić nazwę folderu konfiguracji połączenia bazy danych konwencji (upewnij się, że pliki przepływu pracy ciągłej integracji/ciągłego wdrażania są odpowiednio aktualizowane). Domyślna wartość to swa-db-connections
.
Parametry połączenia bazy danych, z którą chcesz nawiązać połączenie.
Baza danych konta usługi Cosmos DB, z którą chcesz nawiązać połączenie (wymagana tylko w przypadku używania typu bazy danych cosmosdb_nosql).
Kontener konta usługi CosmosDB, z którym chcesz nawiązać połączenie.
Wyświetl pomoc dotyczącą polecenia.
Parametry globalne
Wyświetl numer wersji.
Włącz pełne dane wyjściowe. Wartości poziomu obejmują silly
, , info
( log
wartość domyślna) i silent
.
Ścieżka do pliku swa-cli.config.json.
Konfiguracja używana przez interfejs wiersza polecenia.
Drukuj wszystkie rozwiązane opcje. Wartość domyślna to false
.
Pokaż pomoc kontekstową.