swa
Kommandon
Name | Description | Typ | Status |
---|---|---|---|
swa login |
Logga in på Azure |
SWA Core | Allmän tillgänglighet |
swa build |
Skapar programmet. Om du har ett Node.js program installeras beroenden först. |
SWA Core | Allmän tillgänglighet |
swa start |
Starta Azure Static Web Apps-emulatorn från en katalog eller bind till en utvecklingsserver som körs. |
SWA Core | Allmän tillgänglighet |
swa deploy |
Distribuera det aktuella projektet till Azure Static Web Apps. |
SWA Core | Allmän tillgänglighet |
swa db |
Generera och redigera konfigurationen av static Web Apps-databasanslutningar. |
SWA Core | Allmän tillgänglighet |
swa login
Logga in på Azure
Autentisera med Azure för att hämta en distributionstoken för Azure Static Web Apps med hjälp av swa deploy
kommandot .
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Exempel
Interaktiv inloggning till Azure
swa login
Valfria parametrar
Azure-prenumerations-ID som används av det här projektet. Standardvärdet är process.env.AZURE_SUBSCRIPTION_ID
.
Namnet på resursgruppen. Du kan konfigurera standardgruppen med .az configure --defaults group=<name>
Azure-klientorganisations-ID. Standardvärdet är process.env.AZURE_TENANT_ID
.
Azure-klient-ID.
Azure-klienthemlighet.
Azure Static Web Apps-appnamn.
Rensa beständiga autentiseringsuppgifter innan du loggar in. Standardvärdet är false
.
Använd operativsystemets interna nyckelring för beständiga autentiseringsuppgifter. Standardvärdet är true
.
Inaktivera användning av den inbyggda nyckelringen för operativsystemet.
Globala parametrar
Visa versionsnumret.
Aktivera utförliga utdata. Nivåvärdena inkluderar silly
, info
, log
(standard) och silent
.
Sökväg till filen swa-cli.config.json.
Konfiguration som används av CLI.
Skriv ut alla lösta alternativ. Standard är false
.
Visa sammanhangsberoende hjälp.
swa init
Konfigurerar ett nytt Azure Static Web Apps-projekt.
Konfigurerar ett nytt Azure Static Web Apps-projekt med Static Web Apps CLI. Interaktivt läge ber dig om ett konfigurationsnamn, identifierar dina projektinställningar och de ramverk som används. När den är klar skapas en ny statisk webbapp och en swa-cli.config.json fil genereras i den aktuella katalogen.
Du kan köra swa init
flera gånger för att skapa olika konfigurationer för projektet. Du kanske vill göra detta om du arbetar med en monorepo och vill konfigurera olika projekt.
Den genererade konfigurationsfilen används i varje kommando som du kör med Static Web Apps CLI. Om du har flera namngivna konfigurationer kan du använda positionsargumentet eller --config-name
alternativet för att ange vilken konfiguration du vill använda.
Följande är ett exempel på en konfiguration som genereras av init
kommandot:
"$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]
Exempel
Skapa en ny konfiguration interaktivt.
swa init
Skapa en ny konfiguration med standardvärden för alla alternativ.
swa init --yes
Initiera projektet med hjälp av konfigurationen med namnet "myApp" från filen swa-cli.config.json.
swa init --config-name myApp
Valfria parametrar
Svarar "ja" på alla frågor, vilket inaktiverar interaktivt läge. Standard är false
.
Globala parametrar
Visa versionsnumret.
Aktivera utförliga utdata. Nivåvärdena inkluderar silly
, info
, log
(standard) och silent
.
Sökväg till filen swa-cli.config.json.
Konfiguration som används av CLI.
Skriv ut alla lösta alternativ. Standard är false
.
Visa sammanhangsberoende hjälp.
swa start
Starta Azure Static Web Apps-emulatorn från en katalog eller bind till en utvecklingsserver som körs.
Hantera från en mapp
Som standard startar och hanterar CLI allt statiskt innehåll från den aktuella arbetskatalogen ./
:
swa start
Om artefaktmappen för den statiska appen finns under en annan mapp (till exempel ./my-dist
) kör du CLI och anger den mappen:
swa start ./my-dist
Hantera från en utvecklingsserver
När du utvecklar klientdelsappen lokalt är det ofta användbart att använda utvecklingsservern som medföljer klientdelsramverkets CLI. Med ramverket CLI kan du använda inbyggda funktioner som "livereload" och HMR (ersättning av frekventa moduler). Följ dessa två steg om du vill använda SWA CLI med din lokala utvecklingsserver:
- Starta din lokala utvecklingsserver som vanligt. Om du till exempel använder Angular:
ng serve
(ellernpm start
). - I en separat terminal kör du
swa start
med den URI som tillhandahålls av utvecklingsservern i följande format:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Här är en lista över standardportar och kommandon som används av några populära utvecklingsservrar:
Verktyg | Port | Command |
---|---|---|
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 (Skapa React-app) | 3000 |
swa start http://localhost:3000 |
Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
Vue | 3000 |
swa start http://localhost:3000 |
I stället för att starta en utvecklingsserver separat kan du ange startkommandot till CLI.
# 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"
Få sedan åtkomst till programmet med de emulerade tjänsterna från http://localhost:4280
Hantera både klientdelsappen och API:et
Om ditt projekt innehåller API-funktioner kontrollerar CLI om Azure Functions Core Tools är installerade och tillgängliga. Annars laddar CLI ned och installerar rätt version av Azure Functions Core Tools.
Starta API-servern automatiskt
Kör CLI och ange mappen som innehåller API-serverdelen (ett giltigt Azure Functions App-projekt):
# 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
Starta API-servern manuellt
När du utvecklar serverdelen lokalt är det ibland bra att köra Azure Functions Core Tools separat för att hantera ditt API. På så sätt kan du använda inbyggda funktioner som felsökning och omfattande redigeringsstöd. Följ dessa två steg om du vill använda CLI med din lokala API-serverdelsserver:
- Starta ditt API med Azure Functions Core Tools:
func host start
eller börja felsöka i VS Code. - I en separat terminal kör du SWA CLI med
--api-location
flaggan och URI:n för den lokala API-servern i följande format:
swa start ./my-dist --api-location http://localhost:7071
Databasanslutningar
Om du vill starta programmet med en databasanslutning använder du parametern --data-api-location
och pekar på mappen som innehåller staticwebapp.database.config.json-filen.
swa start ./src --data-api-location swa-db-connections
Exempel
Starta programmet med standardvärden.
swa start
Starta programmet med en klientdelsutvecklingsserver.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Starta programmet med en klientdels- och serverdelsutvecklingsserver.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Valfria parametrar
Mappen som innehåller källkoden för klientdelsprogrammet. Standard är .
.
Mappen som innehåller källkoden för API-programmet.
Mappen som innehåller den byggda källan för klientdelsprogrammet. Sökvägen är relativ till --app-location
. Standard är .
.
Mappen som innehåller filen staticwebapp.database.config.json .
Anslut till apputvecklingsservern på den här URL:en i stället för att använda utdataplatsen.
Anslut till API-servern på den här URL:en i stället för att använda utdataplatsen.
API-serverporten skickades till func start
. Standardvärdet är 7071.
Värdadressen som används för CLI-utvecklingsservern. Standard är localhost
.
Det portvärde som ska användas för CLI dev-servern. Standard 4280
.
Hantera klientdelsprogrammet och API:et via HTTPS. Standard är false
.
SSL-certifikatet (.crt) som används när HTTPS aktiveras.
SSL-nyckeln (.key) som används när HTTPS aktiveras.
Plats för ett anpassat gränssnittskommando eller skriptfil som ska köras vid start.
Hur lång tid det tar att vänta (i sekunder) när du ansluter till ett klientdelsprograms utvecklingsserver eller en API-server. Standardvärdet är 60.
Filens staticwebapp.config.json
katalogplats.
Öppna webbläsaren till utvecklingsservern. Standardvärdet är falskt.
Skicka ytterligare argument till func start
kommandot.
Globala parametrar
Visa versionsnumret.
Aktivera utförliga utdata. Nivåvärdena inkluderar silly
, info
, log
(standard) och silent
.
Sökväg till filen swa-cli.config.json.
Konfiguration som används av CLI.
Skriv ut alla lösta alternativ. Standard är false
.
Visa sammanhangsberoende hjälp.
swa build
Skapar programmet. Om du har ett Node.js program installeras beroenden först.
Vanliga användningsfall är: installera beroenden för klientdelsappen och API:et och köra byggkommandona för båda, bara skapa klientdelen eller API-projektet om det andra inte har något byggsteg.
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Exempel
Skapa appen och installera beroenden om du vill.
swa build
Identifiera hur du skapar din app och kör byggkommandon när du har installerat beroenden.
swa build --auto
Installera beroenden för klientdelsprogrammet.
swa build --app-location ./client
Använd konfigurationen med namnet "myApp" i *swa-cli.config.json* för att skapa klientdelsprogrammet.
swa build myApp
Valfria parametrar
Mappen som innehåller källkoden för klientdelsprogrammet. Standard är .
.
Mappen som innehåller källkoden för API-programmet.
Mappen som innehåller den byggda källan för klientdelsprogrammet. Den här sökvägen är relativ till --app-location
. Standard är .
.
Skapar klientdelsprogrammet.
Skapar API-programmet.
Identifierar automatiskt hur du skapar klientdels- och API-program. Standard är false
.
Globala parametrar
Visa versionsnumret.
Aktivera utförliga utdata. Nivåvärdena inkluderar silly
, info
, log
(standard) och silent
.
Sökväg till filen swa-cli.config.json.
Konfiguration som används av CLI.
Skriv ut alla lösta alternativ. Standard är false
.
Visa sammanhangsberoende hjälp.
swa deploy
Distribuera det aktuella projektet till Azure Static Web Apps.
Vanliga användningsfall är:
- Distribuera en klientdelsapp utan API
- Distribuera en klientdelsapp med ett API
- Distribuera en Blazor-app
Distributionstoken
SWA CLI stöder distribution med hjälp av en distributionstoken. Detta är ofta användbart när du distribuerar från en CI/CD-miljö. Du kan hämta en distributionstoken från:
Azure Portal: Home → Static Web App → Din instans → Översikt → Hantera distributionstoken
Om du använder Azure CLI kan du hämta distributionstoken för projektet med hjälp av följande kommando:
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
Om du använder Azure Static Web Apps CLI kan du använda följande kommando:
swa deploy --print-token
Du kan sedan använda det värdet med
--deployment-token <TOKEN>
eller så kan du skapa en miljövariabel med namnetSWA_CLI_DEPLOYMENT_TOKEN
och ställa in det på distributionstoken.Viktigt: Lagra inte distributionstoken på en offentlig lagringsplats. Det här värdet måste förbli en hemlighet.
Distribuera en klientdelsapp utan API
Du kan distribuera ett klientdelsprogram utan ETT API till Azure Static Web Apps genom att köra följande steg:
- Om klientdelsprogrammet kräver ett byggsteg kör
swa build
eller läser du anvisningarna för programbygget.
Alternativ 1: Kör distributionskommandot från den byggmapp som du vill distribuera:
cd build/
swa deploy
Obs! Mappen
build
måste innehålla det statiska innehållet i din app som du vill distribuera. Alternativ 2: Du kan också distribuera en specifik mapp:
- Om klientdelsprogrammet kräver ett byggsteg kör
swa build
eller läser du instruktionerna för programversion. - Distribuera din app:
swa deploy ./my-dist
Distribuera en klientdelsapp med ett API
Använd följande steg för att distribuera både klientdelsappen och ett API till Azure Static Web Apps:
- Om klientdelsprogrammet kräver ett byggsteg kör
swa build
eller läser du instruktionerna för programversion. - Kontrollera att API-språkkörningsversionen i
staticwebapp.config.json
filen är korrekt inställd, till exempel:
{
"platform": {
"apiRuntime": "node:16"
}
}
Obs! Om projektet inte har någon
staticwebapp.config.json
fil lägger du till en under mappenoutputLocation
.
- Distribuera din app:
swa deploy ./my-dist --api-location ./api
Distribuera en Blazor-app
Använd följande steg för att distribuera en Blazor-app med ett valfritt API till Azure Static Web Apps:
- Skapa din Blazor-app i versionsläge :
dotnet publish -c Release -o bin/publish
- Kör kommandot från roten i
deploy
projektet:
swa deploy ./bin/publish/wwwroot --api-location ./Api
Distribuera med hjälp av swa-cli.config.json
Obs! Sökvägen för
outputLocation
måste vara relativ tillappLocation
. Om du använder enswa-cli.config.json
konfigurationsfil i projektet och har en enda konfigurationspost använder du en konfiguration som den här:
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Sedan kan du distribuera ditt program genom att köra följande steg:
- Om klientdelsprogrammet kräver ett byggsteg kör
swa build
eller läser du anvisningarna för programbygget. - Distribuera din app:
swa deploy
Om du har flera konfigurationsposter kan du ange post-ID:t för att ange vilken som ska användas:
swa deploy my-otherapp
swa deploy
[--yes]
Exempel
Distribuera med hjälp av en distributionstoken.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Distribuera med hjälp av en distributionstoken från miljövariablerna
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Distribuera med hjälp av filen "swa-cli.config.json"
swa deploy swa deploy myconfig
Skriv ut distributionstoken
swa deploy --print-token
Distribuera till en specifik miljö
swa deploy --env production
Globala parametrar
Visa versionsnumret.
Aktivera utförliga utdata. Nivåvärdena inkluderar silly
, info
, log
(standard) och silent
.
Sökväg till filen swa-cli.config.json.
Konfiguration som används av CLI.
Skriv ut alla lösta alternativ. Standard är false
.
Visa sammanhangsberoende hjälp.
swa db
Generera och redigera konfigurationen av static Web Apps-databasanslutningar.
Använd swa db init
för att generera en exempelmapp för swa-db-connections, tillsammans med en staticwebapp.database.config.json konfigurationsfil. Om du använder en Cosmos DB för NoSQL-databas genereras även ett exempel på schemafilen staticwebapp.database.schema.gql .
swa db init --database-type <DATABASE_TYPE>
Exempel
Generera en exempelmapp för databasanslutningskonfiguration för en Azure SQL-databas.
swa db init --database-type mssql
Valfria parametrar
(Krävs) Typen av databas som du vill ansluta (mssql, postgresql, cosmosdb_nosql, mysql).
Ett mappnamn som åsidosätter namnet på konfigurationsmappen för konventionsdatabasanslutning (se till att du uppdaterar ci/CD-arbetsflödesfilerna i enlighet med detta). Standardvärdet är swa-db-connections
.
Den anslutningssträng av databasen som du vill ansluta till.
Databasen för ditt Cosmos DB-konto som du vill ansluta (behövs bara om du använder cosmosdb_nosql databastyp).
Containern för ditt cosmosdb-konto som du vill ansluta till.
Visa hjälp för kommandot.
Globala parametrar
Visa versionsnumret.
Aktivera utförliga utdata. Nivåvärdena inkluderar silly
, info
, log
(standard) och silent
.
Sökväg till filen swa-cli.config.json.
Konfiguration som används av CLI.
Skriv ut alla lösta alternativ. Standard är false
.
Visa sammanhangsberoende hjälp.