Wdrażanie statycznej aplikacji internetowej przy użyciu interfejsu wiersza polecenia usługi Azure Static Web Apps

Interfejs wiersza polecenia usługi Azure Static Web Apps (SWA CLI) zawiera deploy polecenie w celu wdrożenia bieżącego projektu w usłudze Azure Static Web Apps.

Typowe scenariusze wdrażania obejmują:

  • Aplikacja frontonu bez interfejsu API
  • Aplikacja frontonu z interfejsem API
  • Aplikacje platformy Blazor

Token wdrożenia

Interfejs wiersza polecenia swa obsługuje wdrażanie przy użyciu tokenu wdrożenia w celu włączenia konfiguracji w środowiskach ciągłej integracji/ciągłego wdrażania.

Token wdrożenia można uzyskać z:

  • Witryna Azure Portal: → statycznej aplikacji internetowej → wystąpienia → — omówienie → Zarządzanie tokenem wdrożenia

  • Interfejs wiersza polecenia platformy secrets list Azure: za pomocą polecenia:

    az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
    
  • Interfejs wiersza polecenia usługi Azure Static Web Apps: za pomocą deploy polecenia:

    swa deploy --print-token
    

Następnie możesz użyć wartości tokenu z wartością --deployment-token <TOKEN> lub możesz utworzyć zmienną środowiskową o nazwie SWA_CLI_DEPLOYMENT_TOKEN i ustawić ją na token wdrożenia.

Ważne

Nie przechowuj tokenów wdrażania w repozytorium publicznym.

Wdrażanie aplikacji frontonu bez interfejsu API

Aplikację frontonu można wdrożyć bez interfejsu API w usłudze Azure Static Web Apps. Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom swa build lub zapoznaj się z instrukcjami kompilacji aplikacji.

Wybierz opcję, która najlepiej odpowiada twoim potrzebom w celu skonfigurowania wdrożenia

  • Opcja 1. W folderze kompilacji, który chcesz wdrożyć, uruchom polecenie deploy:

    cd build/
    swa deploy
    

    Uwaga

    Folder kompilacji musi zawierać zawartość statyczną aplikacji, która ma zostać wdrożona.

  • Opcja 2. Można również wdrożyć określony folder:

    1. Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom swa build lub zapoznaj się z instrukcjami kompilacji aplikacji.

    2. Wdróż aplikację:

    swa deploy ./my-dist
    

Wdrażanie aplikacji frontonu za pomocą interfejsu API

Wykonaj poniższe kroki, aby wdrożyć aplikację z punktami końcowymi interfejsu API.

  1. Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom swa build lub zapoznaj się z instrukcjami kompilacji aplikacji.

  2. Upewnij się, że wersja środowiska uruchomieniowego języka interfejsu API w pliku staticwebapp.config.json jest poprawnie ustawiona, na przykład:

    {
      "platform": {
        "apiRuntime": "node:16"
      }
    }
    

    Uwaga

    Jeśli projekt nie ma pliku staticwebapp.config.json , dodaj go w outputLocation folderze.

  3. Wdróż aplikację:

    swa deploy ./my-dist --api-location ./api
    

Wdrażanie aplikacji Platformy Blazor

Aplikację Platformy Blazor można wdrożyć, wykonując następujące kroki.

  1. Skompiluj aplikację Blazor w trybie wydania :

    dotnet publish -c Release -o bin/publish
    
  2. W katalogu głównym projektu uruchom polecenie deploy:

    swa deploy ./bin/publish/wwwroot --api-location ./Api
    

Wdrażanie przy użyciu pliku konfiguracji

Uwaga

Ścieżka dla outputLocation elementu musi być względna względem .appLocation

Jeśli używasz swa-cli.config.json pliku konfiguracji w projekcie z pojedynczym wpisem konfiguracji, możesz wdrożyć aplikację, wykonując następujące kroki.

Przykład pojedynczego wpisu konfiguracji wygląda podobnie do poniższego fragmentu kodu.

{
  "configurations": {
    "my-app": {
      "appLocation": "./",
      "apiLocation": "api",
      "outputLocation": "frontend",
      "start": {
        "outputLocation": "frontend"
      },
      "deploy": {
        "outputLocation": "frontend"
      }
    }
  }
}
  1. Jeśli aplikacja frontonu wymaga kroku kompilacji, uruchom swa build lub zapoznaj się z instrukcjami kompilacji aplikacji.

  2. 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

Opcje

Poniżej przedstawiono opcje, których można użyć z usługą swa deploy:

  • -a, --app-location <path>: folder zawierający kod źródłowy aplikacji frontonu (wartość domyślna: ".")
  • -i, --api-location <path>: folder zawierający kod źródłowy aplikacji interfejsu API
  • -O, --output-location <path>: folder zawierający wbudowane źródło aplikacji frontonu. Ścieżka jest względna ( --app-location wartość domyślna: ".")
  • -w, --swa-config-location <swaConfigLocation>: katalog, w którym znajduje się plik staticwebapp.config.json
  • -d, --deployment-token <secret>: token tajny używany do uwierzytelniania w usłudze Static Web Apps
  • -dr, --dry-run: symulować proces wdrażania bez faktycznego uruchomienia go (ustawienie domyślne: false)
  • -pt, --print-token: wydrukuj token wdrożenia (wartość domyślna: false)
  • --env [environment]: typ środowiska wdrażania, w którym ma zostać wdrożony projekt (domyślnie: "preview")
  • -S, --subscription-id <subscriptionId>: Identyfikator subskrypcji platformy Azure używany przez ten projekt (domyślnie: process.env.AZURE_SUBSCRIPTION_ID)
  • -R, --resource-group <resourceGroupName>: Grupa zasobów platformy Azure używana przez ten projekt
  • -T, --tenant-id <tenantId>: Identyfikator dzierżawy platformy Azure (ustawienie domyślne: process.env.AZURE_TENANT_ID)
  • -C, --client-id <clientId>: Identyfikator klienta platformy Azure
  • -CS, --client-secret <clientSecret>: Wpis tajny klienta platformy Azure
  • -n, --app-name <appName>: Nazwa aplikacji statycznej aplikacji internetowej platformy Azure
  • -cc, --clear-credentials: wyczyść utrwalone poświadczenia przed zalogowaniem (ustawienie domyślne: false)
  • -u, --use-keychain: włącz przy użyciu natywnego łańcucha kluczy systemu operacyjnego dla poświadczeń trwałych (ustawienie domyślne: true)
  • -nu, --no-use-keychain: wyłącz przy użyciu natywnego łańcucha kluczy systemu operacyjnego
  • -h, --help: wyświetla pomoc dla polecenia

Sposób użycia

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 swa-cli.config.json pliku

swa deploy
swa deploy myconfig

Wydrukuj token wdrożenia.

swa deploy --print-token

Wdrażanie w określonym środowisku.

swa deploy --env production

Następne kroki