Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A referência dos comandos da CLI dos Aplicativos Web Estáticos do Azure.
Commands
| Command | Description | Tipo | Status |
|---|---|---|---|
| swa login | Fazer logon no Azure. | SWA Core | GA |
| swa init | Configura um novo projeto de Aplicativos Web Estáticos do Azure. | SWA Core | GA |
| swa build | Cria o aplicativo. Se você tiver um aplicativo Node.js, ele instalará as dependências primeiro. | SWA Core | GA |
| swa start | Inicie o emulador de Aplicativos Web Estáticos do Azure de um diretório ou associe a um servidor de desenvolvimento em execução. | SWA Core | GA |
| swa deploy | Implante o projeto atual nos Aplicativos Web Estáticos do Azure. | SWA Core | GA |
| swa db | Gere e edite a configuração de conexões do banco de dados do seus Aplicativos Web Estáticos. | SWA Core | GA |
Global Parameters
| Parameter | Summary |
|---|---|
| --version, -v | Exibe o número de versão. |
| --verbose, --V [level] | Habilita a saída detalhada. Os valores de nível incluem silly, info, log (padrão) e silent. |
| --config, -c [caminho] | O caminho para o arquivo swa-cli.config.json. |
| --config-name, -cn | A configuração usada pela CLI. |
| --print-config, -g | Imprime todas as opções resolvidas. O padrão é false. |
| --help, -h | Mostrar a ajuda contextual. |
swa login
Fazer logon no Azure.
Autentique-se com o Azure para obter um token de implantação para Aplicativos Web Estáticos do Azure usando o comando swa deploy.
Syntax
swa login
[--subscription-id]
[--resource-group]
[--tenant-id]
[--client-id]
[--client-secret]
[--app-name]
[--clear-credentials]
[--use-keychain]
[--no-use-keychain]
Examples
Exemplo 1: Logon interativo no Azure
swa login
Parameters
--subscription-id, -S
ID de assinatura do Azure usada por este projeto. O padrão é process.env.AZURE_SUBSCRIPTION_ID.
--resource-group, -R
Nome do grupo de recursos. Você pode configurar o grupo padrão usando az configure --defaults group=<name>.
--tenant-id, -T
ID do locatário do Azure. O padrão é process.env.AZURE_TENANT_ID.
--client-id, -C
ID do cliente do Azure.
--client-secret, -CS
Segredo do cliente do Azure.
--app-name, -n
Nome do aplicativo dos Aplicativos Web Estáticos do Azure.
--clear-credentials -cc
Limpe as credenciais persistidas antes do logon. O padrão é false.
--use-keychain, -u
Use o conjunto de chaves nativo do sistema operacional para credenciais persistentes. O padrão é true.
--no-use-keychain, -nu
Desabilite o uso do conjunto de chaves nativo do sistema operacional.
swa init
Configura um novo projeto de Aplicativos Web Estáticos do Azure.
Configura um novo projeto de Aplicativos Web Estáticos do Azure com a CLI de Aplicativos Web Estáticos. O modo interativo solicita um nome de configuração, detecta as configurações do projeto e as estruturas usadas. Depois de concluído, um novo aplicativo Web estático é criado e um swa-cli.config.json arquivo é gerado no diretório atual.
Você pode executar swa init várias vezes para criar diferentes configurações para seu projeto. Talvez você queira fazer isso se estiver trabalhando em um monorepo e quiser configurar projetos diferentes.
O arquivo de configuração gerado é usado em todos os comandos executados com a CLI de Aplicativos Web Estáticos. Se você tiver várias configurações nomeadas, poderá usar o argumento posicional ou a opção --config-name para especificar qual configuração deseja usar.
Veja a seguir um exemplo de configuração gerada pelo comando init:
{
"$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"
}
}
}
Syntax
swa init
[--yes]
Examples
Exemplo 1: criar uma nova configuração interativamente.
swa init
Exemplo 2: criar uma nova configuração usando valores padrão para todas as opções.
swa init --yes
Exemplo 3: inicialize o projeto usando a configuração chamada "myApp" do arquivo swa-cli.config.json.
swa init --config-name myApp
Parameters
--yes, -y
Responde “sim” a todos os prompts, o que desativa o modo interativo. O padrão é false.
swa build
Cria o aplicativo. Se você tiver um aplicativo Node.js, ele instalará as dependências primeiro.
Os casos de uso comuns incluem: instalar dependências para o aplicativo front-end e a API e executar os comandos de build para ambos, criando apenas o projeto front-end ou de API se o outro não tiver uma etapa de build.
Syntax
swa build
[--app-location]
[--api-location]
[--output-location]
[--app-build-command]
[--api-build-command]
[--auto]
Examples
Exemplo 1: criar o aplicativo e, opcionalmente, instalar dependências.
swa build
Exemplo 2: detectar como criar seu aplicativo e executar comandos de build após a instalação de dependências.
swa build --auto
Exemplo 3: instalar dependências para o aplicativo front-end.
swa build --app-location ./client
Exemplo 4: use a configuração nomeada myApp em swa-cli.config.json para criar seu aplicativo front-end.
swa build myApp
Parameters
--app-location, -a
A pasta que contém o código-fonte do aplicativo de front-end. O padrão é ..
--api-location, -i
A pasta que contém o código-fonte do aplicativo de API.
--output-location, -O
A pasta que contém o código-fonte construído do aplicativo de front-end. Esse caminho é relativo a --app-location. O padrão é ..
--app-build-command, -A
Cria o aplicativo de front-end.
--api-build-command, -I
Cria o aplicativo de API.
--auto
Detecta automaticamente como criar seus aplicativos de front-end e de API. O padrão é false.
swa start
Inicie o emulador de Aplicativos Web Estáticos do Azure de um diretório ou associe a um servidor de desenvolvimento em execução.
Servir de uma pasta
Por padrão, a CLI inicia e serve qualquer conteúdo estático do diretório de trabalho atual ./:
swa start
Se a pasta de artefato do aplicativo estático estiver em uma pasta diferente (por exemplo, ./my-dist), execute a CLI e forneça essa pasta:
swa start ./my-dist
Servir de um servidor de desenvolvimento
Ao desenvolver seu aplicativo de front-end localmente, muitas vezes é útil usar o servidor de desenvolvimento que vem com a CLI da estrutura de front-end. O uso da CLI da estrutura permite que você use recursos internos como "livereload" e HMR (substituição de módulo instantânea).
Para usar a CLI dos SWA com o servidor de desenvolvimento local, siga estas duas etapas:
Inicie o servidor de desenvolvimento local como de costume. Por exemplo, se você estiver usando Angular:
ng serve(ounpm start).Em um terminal separado, execute
swa startcom o URI fornecido pelo servidor de desenvolvimento, no seguinte formato:
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Aqui está uma lista das portas e comandos padrão usados por alguns servidores de desenvolvimento populares:
| Tool | 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 (Criar aplicativo React) | 3000 |
swa start http://localhost:3000 |
| Svelte (sirv-cli) | 5000 |
swa start http://localhost:5000 |
| Vue | 3000 |
swa start http://localhost:3000 |
Em vez de iniciar um servidor de desenvolvimento separadamente, você pode fornecer o comando de inicialização à 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"
Em seguida, acesse o aplicativo com os serviços emulados de http://localhost:4280
Servir o aplicativo de front-end e a API
Se o projeto incluir funções de API, a CLI verificará se as Ferramentas Principais do Azure Functions estão instaladas e disponíveis. Caso contrário, a CLI baixa e instala a versão certa das Ferramentas Principais do Azure Functions.
Iniciar o servidor de API automaticamente
Execute a CLI e forneça a pasta que contém o back-end da API (um projeto de aplicativo válido do 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
Iniciar o servidor de API manualmente
Ao desenvolver seu back-end localmente, às vezes é útil executar as Azure Functions Core Tools separadamente para servir à API. Isso permite que você use recursos internos, como depuração e suporte avançado para editores.
Para usar a CLI com o servidor de desenvolvimento de back-end da API local, siga estas duas etapas:
Inicie sua API usando as Azure Functions Core Tools:
func host startou inicie a depuração no VS Code.Em um terminal separado, execute a CLI dos SWA com o sinalizador
--api-locatione o URI do servidor de API local, no seguinte formato:
swa start ./my-dist --api-location http://localhost:7071
Database connections
Para iniciar seu aplicativo com uma conexão de banco de dados, use o --data-api-location parâmetro e aponte para a pasta que contém o arquivo staticwebapp.database.config.json .
swa start ./src --data-api-location swa-db-connections
Syntax
swa start
Examples
Exemplo 1: inicie o aplicativo com padrões.
swa start
Exemplo 2: inicie o aplicativo com um servidor de desenvolvimento front-end.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT>
Exemplo 3: inicie o aplicativo com um servidor de desenvolvimento de front-end e back-end.
swa start http://<APP_DEV_SERVER_HOST>:<APP_DEV_SERVER_PORT> --api-location http://localhost:7071
Parameters
--app-location, -a <PATH>
A pasta que contém o código-fonte do aplicativo de front-end. O padrão é ..
--api-location, -i <PATH>
A pasta que contém o código-fonte do aplicativo de API.
--output-location, -O <PATH>
A pasta que contém a fonte interna do aplicativo de front-end. O caminho é relativo a --app-location. O padrão é ..
--data-api-location
A pasta que contém o arquivo staticwebapp.database.config.json .
--app-devserver-url, -D <URL>
Conecte-se ao servidor de desenvolvimento do aplicativo nessa URL em vez de usar o local de saída.
--api-devserver-url, -is <URL>
Conecte-se ao servidor de API nessa URL em vez de usar o local de saída.
--api-port, -j <API_PORT>
A porta do servidor de API passada para func start. O padrão é 7071.
--host, -q <HOST>
O endereço do host usado para o servidor de desenvolvimento da CLI. O padrão é localhost.
--port, -p <PORT>
O valor da porta a ser usado para o servidor de desenvolvimento da CLI. Padrão 4280.
--ssl, -s
Sirva ao aplicativo de front-end e à API através de HTTPS. O padrão é false.
--ssl-cert, -e <SSL_CERT_LOCATION>
O certificado SSL (.crt) usado ao habilitar HTTPS.
--ssl-key, -k <SSL_KEY_LOCATION>
A chave SSL (.key) usada ao habilitar HTTPS.
--run, -r <STARTUP_SCRIPT>
Local de um comando de shell personalizado ou arquivo de script a ser executado na inicialização.
--devserver-timeout, -t <TIME>
O tempo de espera (em segundos) ao se conectar ao servidor de desenvolvimento de um aplicativo de front-end ou a um servidor de API. O padrão é 60.
--swa-config-location, -w <SWA_CONFIG_FILE_LOCATION>
O local do diretório do arquivo staticwebapp.config.json.
--open, -o
Abra o navegador no servidor de desenvolvimento. O padrão é false.
--func-args, -f <FUNCTION_ARGUMENTS>
Passe argumentos adicionais para o comando func start.
swa deploy
Implante o projeto atual nos Aplicativos Web Estáticos do Azure.
Os casos de uso comuns incluem:
Implantar um aplicativo de front-end sem uma API
Implantar um aplicativo de front-end com uma API
Implantar um aplicativo Blazor
Deployment token
A CLI dos SWA dá suporte à implantação usando um token de implantação. Isso geralmente é útil ao implantar a partir de um ambiente de CI/CD. Você pode obter um token de implantação:
O portal do Azure: Home → Aplicativo Web Estático → Sua Instância → Visão Geral → Gerenciar token de implantação
Se você estiver usando a CLI do Azure, poderá obter o token de implantação do seu projeto usando o seguinte comando:
az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
- Caso você esteja usando a CLI de Aplicativos Web Estáticos do Azure, pode usar o seguinte comando:
swa deploy --print-token
Em seguida, você pode usar esse valor com ou --deployment-token <TOKEN> ou pode criar uma variável de ambiente chamada SWA_CLI_DEPLOYMENT_TOKEN e defini-la como o token de implantação.
Important
Não armazene o token de implantação em um repositório público. Esse valor deve permanecer em segredo.
Implantar um aplicativo de front-end sem uma API
Você pode implantar um aplicativo de front-end sem uma API nos Aplicativos Web Estáticos do Azure executando as seguintes etapas:
- Se o aplicativo de front-end exigir uma etapa de build, execute
swa buildou consulte as instruções de build do aplicativo.
Opção 1: Na pasta de build que você deseja implantar, execute o comando de implantação:
cd build/
swa deploy
Note
A build pasta deve conter o conteúdo estático do seu aplicativo que você deseja implantar.
Opção 2: Você também pode implantar uma pasta específica:
Se o aplicativo de front-end exigir uma etapa de build, execute
swa buildou consulte as instruções de build do aplicativo.Implante seu aplicativo:
swa deploy ./my-dist
Implantar um aplicativo de front-end com uma API
Para implantar o aplicativo de front-end e uma API nos Aplicativos Web Estáticos do Azure, use as seguintes etapas:
Se o aplicativo de front-end exigir uma etapa de build, execute
swa buildou consulte as instruções de build do aplicativo.Verifique se a versão de runtime da linguagem da API no arquivo
staticwebapp.config.jsonestá definida corretamente, por exemplo:
{
"platform": {
"apiRuntime": "node:16"
}
}
Note
Se o projeto não tiver nenhum staticwebapp.config.json arquivo, adicione um em sua outputLocation pasta.
- Implante seu aplicativo:
swa deploy ./my-dist --api-location ./api
Implantar um aplicativo Blazor
Para implantar um aplicativo Blazor com uma API opcional nos Aplicativos Web Estáticos do Azure, use as seguintes etapas:
- Crie seu aplicativo Blazor no modo de versão :
dotnet publish -c Release -o bin/publish
- Na raiz do projeto, execute o comando
deploy:
swa deploy ./bin/publish/wwwroot --api-location ./Api
Implantar usando o swa-cli.config.json
Note
O caminho para outputLocation precisa ser relativo ao appLocation.
Se você estiver usando um arquivo de configuração swa-cli.config.json em seu projeto e tiver uma única entrada de configuração, use uma configuração como esta:
{
"configurations": {
"my-app": {
"appLocation": "./",
"apiLocation": "api",
"outputLocation": "frontend",
"start": {
"outputLocation": "frontend"
},
"deploy": {
"outputLocation": "frontend"
}
}
}
}
Em seguida, você pode implantar seu aplicativo executando as seguintes etapas:
Se o aplicativo de front-end exigir uma etapa de build, execute
swa buildou consulte as instruções de build do aplicativo.Implante seu aplicativo:
swa deploy
Se você tiver várias entradas de configuração, poderá fornecer a ID de entrada para especificar qual delas usar:
swa deploy my-otherapp
Syntax
swa deploy
[--yes]
Examples
Exemplo 1: implantar usando um token de implantação.
swa deploy ./dist/ --api-location ./api/ --deployment-token <TOKEN>
Exemplo 2: Implantar usando um token de implantação das variáveis de ambiente
SWA_CLI_DEPLOYMENT_TOKEN=123 swa deploy ./dist/ --api-location ./api/
Exemplo 3: Implantar usando o swa-cli.config.json arquivo
swa deploy
swa deploy myconfig
Exemplo 4: Imprimir o token de implantação
swa deploy --print-token
Exemplo 5: Implantar em um ambiente específico
swa deploy --env production
swa db
Gere e edite a configuração de conexões do banco de dados do seus Aplicativos Web Estáticos.
Use swa db init para gerar uma pasta de exemplo swa-db-connections , juntamente com um staticwebapp.database.config.json arquivo de configuração. Se você estiver usando um banco de dados Cosmos DB para NoSQL, isso também gerará um arquivo de esquema de exemplo staticwebapp.database.schema.gql .
Syntax
swa db init --database-type <DATABASE_TYPE>
Examples
Exemplo 1: gerar uma pasta de configuração de conexão de banco de dados de exemplo para um banco de dados SQL do Azure.
swa db init --database-type mssql
Parameters
--database-type, -t <DATABASE_TYPE>
(Obrigatório) O tipo do banco de dados que você deseja conectar (mssql, postgresql, cosmosdb_nosql, mysql).
--folder-name, -f <FOLDER_NAME>
Um nome de pasta para substituir o nome da pasta de configuração de conexão de banco de dados por convenção (certifique-se de atualizar seus arquivos de fluxo de trabalho de CI/CD de acordo). O valor padrão é swa-db-connections.
---connection-string, -cs <CONNECTION_STRING>
A cadeia de conexão do banco de dados que você deseja conectar.
--cosmosdb_nosql-database, -nd <COSMOSDB_NOSQL_DATABASE>
O banco de dados da sua conta do Cosmos DB que você deseja conectar (somente necessário se estiver usando cosmosdb_nosql o tipo de banco de dados).
--cosmosdb_nosql-container, -nc <COSMOSDB_NOSQL_CONTAINER>
O contêiner da sua conta do Cosmos DB que você deseja conectar.
--help, -h
Exibe a ajuda para o comando.