Share via


Implantar um aplicativo Web estático com a CLI dos Aplicativos Web Estáticos do Azure

A CLI (SWA CLI) dos Aplicativos Web Estáticos do Azure apresenta o comando para implantar o deploy projeto atual nos Aplicativos Web Estáticos do Azure.

Os cenários comuns de implantação incluem:

  • Um aplicativo front-end sem uma API
  • Um aplicativo front-end com uma API
  • Aplicativos Blazor

Token de implantação

A SWA CLI oferece suporte à implantação usando um token de implantação para habilitar configurações em ambientes de CI/CD.

Você pode obter um token de implantação de:

  • Portal do Azure: Início → Aplicativo Web estático → sua instância Visão geral → → Gerenciar token de implantação

  • CLI do Azure: Usando o secrets list comando:

    az staticwebapp secrets list --name <APPLICATION_NAME> --query "properties.apiKey"
    
  • CLI de Aplicativos Web Estáticos do Azure: Usando o deploy comando:

    swa deploy --print-token
    

Em seguida, você pode usar o valor do token com o ou pode criar uma variável de ambiente chamada SWA_CLI_DEPLOYMENT_TOKEN e defini-la como o --deployment-token <TOKEN> token de implantação.

Importante

Não armazene tokens de implantação em um repositório público.

Implantar um aplicativo front-end sem uma API

Você pode implantar um aplicativo front-end sem uma API nos Aplicativos Web Estáticos do Azure. Se o aplicativo front-end exigir uma etapa de compilação, execute swa build ou consulte as instruções de compilação do aplicativo.

Selecione a opção que melhor se adapta às suas necessidades para configurar sua implantação

  • Opção 1: Na pasta build que você gostaria de implantar, execute o comando deploy:

    cd build/
    swa deploy
    

    Nota

    A pasta de compilação deve conter o conteúdo estático do seu aplicativo a ser implantado.

  • Opção 2: Você também pode implantar uma pasta específica:

    1. Se o aplicativo front-end exigir uma etapa de compilação, execute swa build ou consulte as instruções de compilação do aplicativo.

    2. Implante seu aplicativo:

    swa deploy ./my-dist
    

Implantar um aplicativo front-end com uma API

Use as etapas a seguir para implantar um aplicativo que tenha pontos de extremidade de API.

  1. Se o aplicativo front-end exigir uma etapa de compilação, execute swa build ou consulte as instruções de compilação do aplicativo.

  2. Verifique se a versão do tempo de execução do idioma da API no arquivo staticwebapp.config.json está definida corretamente, por exemplo:

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

    Nota

    Se o seu projeto não tiver o arquivo staticwebapp.config.json , adicione um na sua outputLocation pasta.

  3. Implante seu aplicativo:

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

Implantar um aplicativo Blazor

Você pode implantar um aplicativo Blazor usando as etapas a seguir.

  1. Crie seu aplicativo Blazor no modo Lançamento :

    dotnet publish -c Release -o bin/publish
    
  2. Na raiz do seu projeto, execute o comando deploy:

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

Implantar usando um arquivo de configuração

Nota

O caminho para outputLocation deve ser relativo ao appLocation.

Se você estiver usando um swa-cli.config.json arquivo de configuração em seu projeto com uma única entrada de configuração, poderá implantar seu aplicativo executando as etapas a seguir.

Para referência, um exemplo de uma única entrada de configuração se parece com o trecho de código a seguir.

{
  "configurations": {
    "my-app": {
      "appLocation": "./",
      "apiLocation": "api",
      "outputLocation": "frontend",
      "start": {
        "outputLocation": "frontend"
      },
      "deploy": {
        "outputLocation": "frontend"
      }
    }
  }
}
  1. Se o aplicativo front-end exigir uma etapa de compilação, execute swa build ou consulte as instruções de compilação do aplicativo.

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

Opções

A seguir estão as opções que você pode usar com swa deploy:

  • -a, --app-location <path>: a pasta que contém o código-fonte do aplicativo front-end (padrão: ".")
  • -i, --api-location <path>: a pasta que contém o código-fonte do aplicativo API
  • -O, --output-location <path>: a pasta que contém a fonte construída do aplicativo front-end. O caminho é relativo a --app-location (padrão: ".")
  • -w, --swa-config-location <swaConfigLocation>: o diretório onde o arquivo staticwebapp.config.json está localizado
  • -d, --deployment-token <secret>: o token secreto usado para autenticar com os Static Web Apps
  • -dr, --dry-run: simular um processo de implantação sem realmente executá-lo (padrão: false)
  • -pt, --print-token: imprimir o token de implantação (padrão: false)
  • --env [environment]: o tipo de ambiente de implantação onde implantar o projeto (padrão: "preview")
  • -S, --subscription-id <subscriptionId>: ID de assinatura do Azure usada por este projeto (padrão: process.env.AZURE_SUBSCRIPTION_ID)
  • -R, --resource-group <resourceGroupName>: Grupo de recursos do Azure usado por este projeto
  • -T, --tenant-id <tenantId>: ID do locatário do Azure (padrão: process.env.AZURE_TENANT_ID)
  • -C, --client-id <clientId>: ID do cliente do Azure
  • -CS, --client-secret <clientSecret>: Segredo do cliente do Azure
  • -n, --app-name <appName>: Nome do aplicativo Aplicativo Web Estático do Azure
  • -cc, --clear-credentials: limpar credenciais persistentes antes de entrar (padrão: false)
  • -u, --use-keychain: habilitar o uso do conjunto de chaves nativo do sistema operacional para credenciais persistentes (padrão: true)
  • -nu, --no-use-keychain: desativar usando as chaves nativas do sistema operacional
  • -h, --help: exibir ajuda para o comando

Utilização

Implante usando um token de implantação.

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

Implante usando um token de implantação das variáveis de ambiente.

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

Implantar usando swa-cli.config.json arquivo

swa deploy
swa deploy myconfig

Imprima o token de implantação.

swa deploy --print-token

Implante em um ambiente específico.

swa deploy --env production

Próximos passos