Delen via


swa

Opdracht

Name Description Type Status
swa login

Meld u aan bij Azure

SWA Core GA
swa build

Hiermee wordt de toepassing gebouwd. Als u een Node.js-toepassing hebt, worden eerst afhankelijkheden geïnstalleerd.

SWA Core GA
swa start

Start de Azure Static Web Apps-emulator vanuit een map of bind met een actieve dev-server.

SWA Core GA
swa deploy

Implementeer het huidige project in Azure Static Web Apps.

SWA Core GA
swa db

De configuratie van de static Web Apps-databaseverbindingen genereren en bewerken.

SWA Core GA

swa login

Meld u aan bij Azure

Verifieer met Azure om een implementatietoken voor Azure Static Web Apps op te halen met behulp van de swa deploy opdracht.

swa login
          [--subscription-id]
          [--resource-group]
          [--tenant-id]
          [--client-id]
          [--client-secret]
          [--app-name]
          [--clear-credentials]
          [--use-keychain]
          [--no-use-keychain]

Voorbeelden

Interactief aanmelden bij Azure

swa login

Optionele parameters

--subscription-id, -S

Azure-abonnements-id die door dit project wordt gebruikt. De standaardwaarde is process.env.AZURE_SUBSCRIPTION_ID.

--resource-group, -R

De naam van de resourcegroep. U kunt de standaardgroep configureren met behulp van az configure --defaults group=<name>.

--tenant-id, -T

Azure-tenant-id. De standaardwaarde is process.env.AZURE_TENANT_ID.

--client-id, -C

Azure-client-id.

--client-secret, -CS

Azure-clientgeheim.

--app-name, -n

Azure Static Web Apps-appnaam.

--clear-credentials -cc

Wis persistente referenties voordat u zich aanmeldt. De standaardwaarde is false.

--use-keychain, -u

Gebruik de systeemeigen sleutelhanger van het besturingssysteem voor permanente referenties. De standaardwaarde is true.

--no-use-keychain, -nu

Schakel het gebruik van de systeemeigen sleutelhanger van het besturingssysteem uit.

Globale parameters
--version, -v

Geef het versienummer weer.

--verbose, --V [level]

Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly, info( log standaard) en silent.

--config, -c [path]

Pad naar het swa-cli.config.json-bestand.

--config-name, -cn

Configuratie die wordt gebruikt door de CLI.

--print-config, -g

Alle opgeloste opties afdrukken. Standaard is false.

--help, -h

Contextgevoelige help weergeven.

swa init

Hiermee configureert u een nieuw Azure Static Web Apps-project.

Hiermee configureert u een nieuw Azure Static Web Apps-project met de Static Web Apps CLI. In de interactieve modus wordt u gevraagd om een configuratienaam, worden uw projectinstellingen en de frameworks gedetecteerd die worden gebruikt. Zodra dit is voltooid, wordt er een nieuwe statische web-app gemaakt en wordt er een swa-cli.config.json-bestand gegenereerd in de huidige map. U kunt meerdere keren uitvoeren swa init om verschillende configuraties voor uw project te maken. U kunt dit doen als u aan een monorepo werkt en verschillende projecten wilt configureren. Het gegenereerde configuratiebestand wordt gebruikt in elke opdracht die u uitvoert met de Static Web Apps CLI. Als u meerdere benoemde configuraties hebt, kunt u het positionele argument of --config-name de optie gebruiken om op te geven welke configuratie u wilt gebruiken. Hier volgt een voorbeeldconfiguratie die wordt gegenereerd door de init opdracht:

  "$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]

Voorbeelden

Maak interactief een nieuwe configuratie.

swa init

Maak een nieuwe configuratie met standaardwaarden voor alle opties.

swa init --yes

Initialiseer het project met behulp van de configuratie met de naam 'myApp' uit het swa-cli.config.json-bestand.

swa init --config-name myApp

Optionele parameters

--yes, -y

Antwoorden op 'ja' voor alle prompts, waardoor de interactieve modus wordt uitgeschakeld. Standaard is false.

Globale parameters
--version, -v

Geef het versienummer weer.

--verbose, --V [level]

Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly, info( log standaard) en silent.

--config, -c [path]

Pad naar het swa-cli.config.json-bestand.

--config-name, -cn

Configuratie die wordt gebruikt door de CLI.

--print-config, -g

Alle opgeloste opties afdrukken. Standaard is false.

--help, -h

Contextgevoelige help weergeven.

swa start

Start de Azure Static Web Apps-emulator vanuit een map of bind met een actieve dev-server.

Serveren vanuit een map

Standaard wordt de CLI gestart en verwerkt alle statische inhoud uit de huidige werkmap ./:

swa start

Als de artefactmap van uw statische app zich onder een andere map bevindt (bijvoorbeeld ./my-dist), voert u de CLI uit en geeft u die map op:

swa start ./my-dist

Serveren vanaf een dev-server

Wanneer u uw front-end-app lokaal ontwikkelt, is het vaak handig om de dev-server te gebruiken die wordt geleverd met de CLI van uw front-endframework. Met behulp van de framework-CLI kunt u ingebouwde functies gebruiken, zoals 'livereload' en HMR (hot module-vervanging). Als u SWA CLI wilt gebruiken met uw lokale dev-server, volgt u deze twee stappen:

  1. Start uw lokale dev-server zoals gebruikelijk. Als u bijvoorbeeld Angular gebruikt: ng serve (of npm start).
  2. Voer swa start in een afzonderlijke terminal uit met de URI die wordt geleverd door de dev-server, in de volgende indeling:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>

Hier volgt een lijst met de standaardpoorten en opdrachten die worden gebruikt door een aantal populaire dev-servers:

Hulpprogramma Poort Opdracht
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 (React-app maken) 3000 swa start http://localhost:3000
Svelte (sirv-cli) 5000 swa start http://localhost:5000
Vue 3000 swa start http://localhost:3000

In plaats van een dev-server afzonderlijk te starten, kunt u de opstartopdracht aan de CLI opgeven.

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

Open vervolgens de toepassing met de geëmuleerde services van http://localhost:4280

Zowel de front-end-app als de API gebruiken

Als uw project API-functies bevat, controleert de CLI of de Azure Functions Core Tools zijn geïnstalleerd en beschikbaar zijn. Zo niet, dan downloadt en installeert de CLI de juiste versie van de Azure Functions Core Tools.

De API-server automatisch starten

Voer de CLI uit en geef de map op die de API-back-end bevat (een geldig Azure Functions App-project):

# 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

API-server handmatig starten

Wanneer u uw back-end lokaal ontwikkelt, is het soms handig om Azure Functions Core Tools afzonderlijk uit te voeren om uw API te bedienen. Hierdoor kunt u ingebouwde functies gebruiken, zoals foutopsporing en uitgebreide ondersteuning voor editors. Voer de volgende twee stappen uit om de CLI te gebruiken met uw lokale API-back-enddevserver:

  1. Start uw API met behulp van Azure Functions Core Tools: func host start of start foutopsporing in VS Code.
  2. Voer in een afzonderlijke terminal de SWA CLI uit met de --api-location vlag en de URI van de lokale API-server, in de volgende indeling:
swa start ./my-dist --api-location http://localhost:7071

Databaseverbindingen

Als u uw toepassing wilt starten met een databaseverbinding, gebruikt u de parameter en wijst u de --data-api-location map met het staticwebapp.database.config.json-bestand aan.

swa start ./src --data-api-location swa-db-connections

Voorbeelden

Start de toepassing met standaardwaarden.

swa start

Start de toepassing met een front-end dev-server.

swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>

Start de toepassing met een front-end- en back-end dev-server.

swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071

Optionele parameters

--app-location, -a <PATH>

De map met de broncode van de front-endtoepassing. Standaard is ..

--api-location, -i <PATH>

De map met de broncode van de API-toepassing.

--output-location, -O <PATH>

De map met de ingebouwde bron van de front-endtoepassing. Het pad is relatief ten --app-locationopzichte van . Standaard is ..

--data-api-location

De map met het bestand staticwebapp.database.config.json .

--app-devserver-url, -D <URL>

Maak verbinding met de app-ontwikkelaarsserver op deze URL in plaats van de uitvoerlocatie te gebruiken.

--api-devserver-url, -is <URL>

Maak verbinding met de API-server op deze URL in plaats van de uitvoerlocatie te gebruiken.

--api-port, -j <API_PORT>

De POORT van de API-server doorgegeven aan func start. De standaardwaarde is 7071.

--host, -q <HOST>

Het hostadres dat wordt gebruikt voor de CLI-ontwikkelserver. Standaard is localhost.

--port, -p <PORT>

De poortwaarde die moet worden gebruikt voor de CLI-dev-server. Standaard 4280.

--ssl, -s

Server de front-endtoepassing en API via HTTPS. Standaard is false.

--ssl-cert, -e <SSL_CERT_LOCATION>

Het SSL-certificaat (.crt) dat wordt gebruikt bij het inschakelen van HTTPS.

--ssl-key, -k <SSL_KEY_LOCATION>

De SSL-sleutel (.key) die wordt gebruikt bij het inschakelen van HTTPS.

--run, -r <STARTUP_SCRIPT>

Locatie van een aangepaste shell-opdracht of scriptbestand dat bij het opstarten moet worden uitgevoerd.

--devserver-timeout, -t <TIME>

De hoeveelheid tijd die moet worden gewacht (in seconden) bij het maken van verbinding met de ontwikkelserver van een front-endtoepassing of een API-server. De standaardwaarde is 60.

--swa-config-location, -w <SWA_CONFIG_FILE_LOCATION>

De maplocatie van het staticwebapp.config.json bestand.

--open, -o

Open de browser naar de ontwikkelserver. Standaard ingesteld op onwaar.

--func-args, -f <FUNCTION_ARGUMENTS>

Geef aanvullende argumenten door aan de func start opdracht.

Globale parameters
--version, -v

Geef het versienummer weer.

--verbose, --V [level]

Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly, info( log standaard) en silent.

--config, -c [path]

Pad naar het swa-cli.config.json-bestand.

--config-name, -cn

Configuratie die wordt gebruikt door de CLI.

--print-config, -g

Alle opgeloste opties afdrukken. Standaard is false.

--help, -h

Contextgevoelige help weergeven.

swa build

Hiermee wordt de toepassing gebouwd. Als u een Node.js-toepassing hebt, worden eerst afhankelijkheden geïnstalleerd.

Veelvoorkomende gebruiksvoorbeelden zijn: afhankelijkheden voor de front-end-app en API installeren en de buildopdrachten voor beide uitvoeren, alleen het front-end- of API-project bouwen als de andere geen buildstap heeft.

swa build
          [--app-location]
          [--api-location]
          [--output-location]
          [--app-build-command]
          [--api-build-command]
          [--auto]

Voorbeelden

Bouw de app en installeer eventueel afhankelijkheden.

swa build

Detecteer hoe u uw app bouwt en buildopdrachten uitvoert nadat u afhankelijkheden hebt geïnstalleerd.

swa build --auto

Installeer afhankelijkheden voor de front-endtoepassing.

swa build --app-location ./client

Gebruik de configuratie met de naam 'myApp' in *swa-cli.config.json* om uw front-endtoepassing te bouwen.

swa build myApp

Optionele parameters

--app-location, -a

De map met de broncode van de front-endtoepassing. Standaard is ..

--api-location, -i

De map met de broncode van de API-toepassing.

--output-location, -O

De map met de ingebouwde bron van de front-endtoepassing. Dit pad is relatief ten --app-locationopzichte van . Standaard is ..

--app-build-command, -A

Hiermee wordt de front-endtoepassing gebouwd.

--api-build-command, -I

Hiermee wordt de API-toepassing gebouwd.

--auto

Detecteert automatisch hoe u uw front-end- en API-toepassingen bouwt. Standaard is false.

Globale parameters
--version, -v

Geef het versienummer weer.

--verbose, --V [level]

Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly, info( log standaard) en silent.

--config, -c [path]

Pad naar het swa-cli.config.json-bestand.

--config-name, -cn

Configuratie die wordt gebruikt door de CLI.

--print-config, -g

Alle opgeloste opties afdrukken. Standaard is false.

--help, -h

Contextgevoelige help weergeven.

swa deploy

Implementeer het huidige project in Azure Static Web Apps.

Veelvoorkomende gebruiksvoorbeelden zijn:

  1. Een front-end-app implementeren zonder API
  2. Een front-end-app implementeren met een API
  3. Een Blazor-app implementeren

Implementatietoken

De SWA CLI ondersteunt het implementeren met behulp van een implementatietoken. Dit is vaak handig bij het implementeren vanuit een CI/CD-omgeving. U kunt een implementatietoken ophalen uit:

  • Azure Portal: Home → Static Web App → Your Instance → Overview → Manage deployment token

  • Als u de Azure CLI gebruikt, kunt u het implementatietoken van uw project ophalen met behulp van de volgende opdracht:

    az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
    
  • Als u de Azure Static Web Apps CLI gebruikt, kunt u de volgende opdracht gebruiken:

    swa deploy --print-token
    

    U kunt die waarde vervolgens gebruiken met de --deployment-token <TOKEN> of u kunt een omgevingsvariabele maken die wordt aangeroepen SWA_CLI_DEPLOYMENT_TOKEN en deze instellen op het implementatietoken.

    Belangrijk: Sla het implementatietoken niet op in een openbare opslagplaats. Deze waarde moet een geheim blijven.

Een front-end-app implementeren zonder API

U kunt een front-endtoepassing zonder API implementeren in Azure Static Web Apps door de volgende stappen uit te voeren:

  1. Als uw front-endtoepassing een buildstap vereist, voert u deze uit swa build of raadpleegt u de build-instructies van uw toepassing.

    Optie 1: Voer de implementatieopdracht uit vanuit de buildmap die u wilt implementeren:
cd build/
swa deploy

Opmerking: de build map moet de statische inhoud van uw app bevatten die u wilt implementeren. Optie 2: U kunt ook een specifieke map implementeren:

  1. Als uw front-endtoepassing een buildstap vereist, voert u deze uit swa build of raadpleegt u de build-instructies van uw toepassing.
  2. Uw app implementeren:
swa deploy ./my-dist

Een front-end-app implementeren met een API

Gebruik de volgende stappen om zowel de front-end-app als een API te implementeren in Azure Static Web Apps:

  1. Als uw front-endtoepassing een buildstap vereist, voert u deze uit swa build of raadpleegt u de build-instructies van uw toepassing.
  2. Zorg ervoor dat de runtimeversie van de API-taal in het staticwebapp.config.json bestand juist is ingesteld, bijvoorbeeld:
{
  "platform": {
    "apiRuntime": "node:16"
  }
}

Opmerking: Als uw project geen bestand heeft staticwebapp.config.json , voegt u er een toe onder uw outputLocation map.

  1. Uw app implementeren:
swa deploy ./my-dist --api-location ./api

Een Blazor-app implementeren

Als u een Blazor-app met een optionele API wilt implementeren in Azure Static Web Apps, gebruikt u de volgende stappen:

  1. Bouw uw Blazor-app in de releasemodus :
dotnet publish -c Release -o bin/publish
  1. Voer vanuit de hoofdmap van uw project de deploy opdracht uit:
swa deploy ./bin/publish/wwwroot --api-location ./Api

Implementeren met behulp van de swa-cli.config.json

Opmerking: het pad voor outputLocation moet ten opzichte van de appLocation. Als u een swa-cli.config.json configuratiebestand in uw project gebruikt en één configuratievermelding hebt, gebruikt u een configuratie als volgt:

{
  "configurations": {
    "my-app": {
      "appLocation": "./",
      "apiLocation": "api",
      "outputLocation": "frontend",
      "start": {
        "outputLocation": "frontend"
      },
      "deploy": {
        "outputLocation": "frontend"
      }
    }
  }
}

Vervolgens kunt u uw toepassing implementeren door de volgende stappen uit te voeren:

  1. Als uw front-endtoepassing een buildstap vereist, voert u deze uit swa build of raadpleegt u de build-instructies van uw toepassing.
  2. Uw app implementeren:
swa deploy

Als u meerdere configuratievermeldingen hebt, kunt u de vermeldings-id opgeven om op te geven welke moet worden gebruikt:

swa deploy my-otherapp
swa deploy
          [--yes]

Voorbeelden

Implementeren met behulp van een implementatietoken.

swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>

Implementeren met behulp van een implementatietoken van de omgevingsvariabelen

SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/

Implementeren met behulp van het bestand 'swa-cli.config.json'.

swa deploy swa deploy myconfig

Het implementatietoken afdrukken

swa deploy --print-token

Implementeren in een specifieke omgeving

swa deploy --env production
Globale parameters
--version, -v

Geef het versienummer weer.

--verbose, --V [level]

Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly, info( log standaard) en silent.

--config, -c [path]

Pad naar het swa-cli.config.json-bestand.

--config-name, -cn

Configuratie die wordt gebruikt door de CLI.

--print-config, -g

Alle opgeloste opties afdrukken. Standaard is false.

--help, -h

Contextgevoelige help weergeven.

swa db

De configuratie van de static Web Apps-databaseverbindingen genereren en bewerken.

Gebruik swa db init dit om een voorbeeldmap swa-db-connections te genereren, samen met een staticwebapp.database.config.json configuratiebestand. Als u een Cosmos DB for NoSQL-database gebruikt, genereert dit ook een voorbeeld van een staticwebapp.database.schema.gql-schemabestand .

swa db init --database-type <DATABASE_TYPE>

Voorbeelden

Genereer een configuratiemap voor een voorbeelddatabaseverbinding voor een Azure SQL-database.

swa db init --database-type mssql

Optionele parameters

--database-type, -t <DATABASE_TYPE>

(Vereist) Het type database waarmee u verbinding wilt maken (mssql, postgresql, cosmosdb_nosql, mysql).

--folder-name, -f <FOLDER_NAME>

Een mapnaam om de naam van de configuratiemap voor de databaseverbinding te overschrijven (zorg ervoor dat u de CI/CD-werkstroombestanden dienovereenkomstig bijwerkt). De standaardwaarde is swa-db-connections.

---connection-string, -cs <CONNECTION_STRING>

De verbindingsreeks van de database waarmee u verbinding wilt maken.

--cosmosdb_nosql-database, -nd <COSMOSDB_NOSQL_DATABASE>

De database van uw Cosmos DB-account waarmee u verbinding wilt maken (alleen nodig als u cosmosdb_nosql databasetype gebruikt).

--cosmosdb_nosql-container, -nc <COSMOSDB_NOSQL_CONTAINER>

De container van uw Cosmosdb-account waarmee u verbinding wilt maken.

--help, -h

Help weergeven voor opdracht.

Globale parameters
--version, -v

Geef het versienummer weer.

--verbose, --V [level]

Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly, info( log standaard) en silent.

--config, -c [path]

Pad naar het swa-cli.config.json-bestand.

--config-name, -cn

Configuratie die wordt gebruikt door de CLI.

--print-config, -g

Alle opgeloste opties afdrukken. Standaard is false.

--help, -h

Contextgevoelige help weergeven.