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
Azure-abonnements-id die door dit project wordt gebruikt. De standaardwaarde is process.env.AZURE_SUBSCRIPTION_ID
.
De naam van de resourcegroep. U kunt de standaardgroep configureren met behulp van az configure --defaults group=<name>
.
Azure-tenant-id. De standaardwaarde is process.env.AZURE_TENANT_ID
.
Azure-client-id.
Azure-clientgeheim.
Azure Static Web Apps-appnaam.
Wis persistente referenties voordat u zich aanmeldt. De standaardwaarde is false
.
Gebruik de systeemeigen sleutelhanger van het besturingssysteem voor permanente referenties. De standaardwaarde is true
.
Schakel het gebruik van de systeemeigen sleutelhanger van het besturingssysteem uit.
Globale parameters
Geef het versienummer weer.
Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly
, info
( log
standaard) en silent
.
Pad naar het swa-cli.config.json-bestand.
Configuratie die wordt gebruikt door de CLI.
Alle opgeloste opties afdrukken. Standaard is false
.
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
Antwoorden op 'ja' voor alle prompts, waardoor de interactieve modus wordt uitgeschakeld. Standaard is false
.
Globale parameters
Geef het versienummer weer.
Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly
, info
( log
standaard) en silent
.
Pad naar het swa-cli.config.json-bestand.
Configuratie die wordt gebruikt door de CLI.
Alle opgeloste opties afdrukken. Standaard is false
.
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:
- Start uw lokale dev-server zoals gebruikelijk. Als u bijvoorbeeld Angular gebruikt:
ng serve
(ofnpm start
). - 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:
- Start uw API met behulp van Azure Functions Core Tools:
func host start
of start foutopsporing in VS Code. - 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
De map met de broncode van de front-endtoepassing. Standaard is .
.
De map met de broncode van de API-toepassing.
De map met de ingebouwde bron van de front-endtoepassing. Het pad is relatief ten --app-location
opzichte van . Standaard is .
.
De map met het bestand staticwebapp.database.config.json .
Maak verbinding met de app-ontwikkelaarsserver op deze URL in plaats van de uitvoerlocatie te gebruiken.
Maak verbinding met de API-server op deze URL in plaats van de uitvoerlocatie te gebruiken.
De POORT van de API-server doorgegeven aan func start
. De standaardwaarde is 7071.
Het hostadres dat wordt gebruikt voor de CLI-ontwikkelserver. Standaard is localhost
.
De poortwaarde die moet worden gebruikt voor de CLI-dev-server. Standaard 4280
.
Server de front-endtoepassing en API via HTTPS. Standaard is false
.
Het SSL-certificaat (.crt) dat wordt gebruikt bij het inschakelen van HTTPS.
De SSL-sleutel (.key) die wordt gebruikt bij het inschakelen van HTTPS.
Locatie van een aangepaste shell-opdracht of scriptbestand dat bij het opstarten moet worden uitgevoerd.
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.
De maplocatie van het staticwebapp.config.json
bestand.
Open de browser naar de ontwikkelserver. Standaard ingesteld op onwaar.
Geef aanvullende argumenten door aan de func start
opdracht.
Globale parameters
Geef het versienummer weer.
Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly
, info
( log
standaard) en silent
.
Pad naar het swa-cli.config.json-bestand.
Configuratie die wordt gebruikt door de CLI.
Alle opgeloste opties afdrukken. Standaard is false
.
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
De map met de broncode van de front-endtoepassing. Standaard is .
.
De map met de broncode van de API-toepassing.
De map met de ingebouwde bron van de front-endtoepassing. Dit pad is relatief ten --app-location
opzichte van . Standaard is .
.
Hiermee wordt de front-endtoepassing gebouwd.
Hiermee wordt de API-toepassing gebouwd.
Detecteert automatisch hoe u uw front-end- en API-toepassingen bouwt. Standaard is false
.
Globale parameters
Geef het versienummer weer.
Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly
, info
( log
standaard) en silent
.
Pad naar het swa-cli.config.json-bestand.
Configuratie die wordt gebruikt door de CLI.
Alle opgeloste opties afdrukken. Standaard is false
.
Contextgevoelige help weergeven.
swa deploy
Implementeer het huidige project in Azure Static Web Apps.
Veelvoorkomende gebruiksvoorbeelden zijn:
- Een front-end-app implementeren zonder API
- Een front-end-app implementeren met een API
- 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 aangeroepenSWA_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:
- 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:
- Als uw front-endtoepassing een buildstap vereist, voert u deze uit
swa build
of raadpleegt u de build-instructies van uw toepassing. - 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:
- Als uw front-endtoepassing een buildstap vereist, voert u deze uit
swa build
of raadpleegt u de build-instructies van uw toepassing. - 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 uwoutputLocation
map.
- 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:
- Bouw uw Blazor-app in de releasemodus :
dotnet publish -c Release -o bin/publish
- 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 deappLocation
. Als u eenswa-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:
- Als uw front-endtoepassing een buildstap vereist, voert u deze uit
swa build
of raadpleegt u de build-instructies van uw toepassing. - 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
Geef het versienummer weer.
Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly
, info
( log
standaard) en silent
.
Pad naar het swa-cli.config.json-bestand.
Configuratie die wordt gebruikt door de CLI.
Alle opgeloste opties afdrukken. Standaard is false
.
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
(Vereist) Het type database waarmee u verbinding wilt maken (mssql, postgresql, cosmosdb_nosql, mysql).
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
.
De verbindingsreeks van de database waarmee u verbinding wilt maken.
De database van uw Cosmos DB-account waarmee u verbinding wilt maken (alleen nodig als u cosmosdb_nosql databasetype gebruikt).
De container van uw Cosmosdb-account waarmee u verbinding wilt maken.
Help weergeven voor opdracht.
Globale parameters
Geef het versienummer weer.
Uitgebreide uitvoer inschakelen. Niveauwaarden zijn onder andere silly
, info
( log
standaard) en silent
.
Pad naar het swa-cli.config.json-bestand.
Configuratie die wordt gebruikt door de CLI.
Alle opgeloste opties afdrukken. Standaard is false
.
Contextgevoelige help weergeven.