Implantar o aplicativo Microsoft Teams na nuvem usando o Microsoft Visual Studio Code

O Microsoft Teams Toolkit ajuda a implantar ou carregar o código de front-end e back-end em seu aplicativo para seus recursos de nuvem provisionados no Azure.

Você pode implantar nos seguintes tipos de recursos de nuvem:

  • Serviços Azure App
  • Azure Functions
  • Armazenamento do Azure (como site estático)
  • SharePoint

Observação

Antes de implantar o código do aplicativo na nuvem do Azure, você precisa concluir com êxito o provisionamento de recursos de nuvem.

Implantar os aplicativos do Teams usando o Kit de Ferramentas do Teams

O guia Introdução ajuda a implantar usando o Teams Toolkit. Você pode usar o seguinte para implantar seu aplicativo do Teams:

Entre em sua conta do Azure

Use essa conta para acessar o Microsoft portal do Azure e provisionar novos recursos de nuvem para dar suporte ao seu aplicativo. Antes de implantar seu aplicativo em Serviço de Aplicativo do Azure, Azure Functions ou Armazenamento do Azure, você deve entrar em sua conta do Azure.

  1. Abra o Visual Studio Code.

  2. Abra a pasta de projeto na qual você criou o aplicativo.

  3. Selecione o ícone kit de ferramentas do Teams na barra lateral.

  4. Selecione Entrar no Azure.

    Dica

    Se você tiver a extensão da Conta do Azure instalada e estiver usando a mesma conta, poderá ignorar esta etapa. Use a mesma conta que você está usando em outras extensões.

    Seu navegador da Web padrão é aberto para permitir que você entre na conta.

  5. Entre em sua conta do Azure usando suas credenciais.

  6. Feche o navegador quando solicitado e retorne ao Visual Studio Code.

A seção ACCOUNTS da barra lateral mostra as duas contas separadamente. Ele também lista o número de assinaturas utilizáveis do Azure disponíveis para você. Verifique se você tem pelo menos uma assinatura utilizável do Azure disponível. Caso contrário, saia e use uma conta diferente.

Agora você está pronto para implantar seu aplicativo no Azure!

Parabéns, você criou um aplicativo do Teams! Agora vamos continuar e aprender a implantar um dos aplicativos no Azure usando o Kit de Ferramentas do Teams.

Implantar no Azure

  1. Selecione Implantar na seção CICLO DE VIDA no painel esquerdo.

    Captura de tela mostrando a seleção de Implantar.

  2. Selecione um ambiente. (Se houver apenas um ambiente, essa etapa será ignorada.)

  3. Selecione Implantar.

    Captura de tela mostrando a seleção de Implantar em Visual Studio Code.

  4. Selecione o ícone kit de ferramentas do Teams na barra lateral.

Personalizar o ciclo de vida de implantação no Teams

Para personalizar o processo de implantação, você pode editar as seções de implantação em 'teamsapp.yml'.

cli/runNpmCommand

Essa ação executa comandos npm em diretório especificado com parâmetros.

Amostra

  - uses: cli/runNpmCommand
    with:
      workingDirectory: ./src
      args: install

Parameters

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja executar o comando. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Não Raiz do projeto
Args Argumentos de comando Sim

cli/runDotnetCommand

Essa ação executa comandos dotnet em diretório especificado com parâmetros.

Amostra

  - uses: cli/runDotnetCommand
    with:
      workingDirectory: ./src
      execPath: /YOU_DOTNET_INSTALL_PATH
      args: publish --configuration Release --runtime win-x86 --self-contained

Parâmetros

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja executar o comando. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Não Raiz do projeto
Args Argumentos de comando npm Sim
execPath Caminho executor Não Path do Sistema

cli/runNpxCommand

Amostra

  - uses: cli/runNpxCommand
    with:
      workingDirectory: ./src
      args: gulp package-solution --ship --no-color

Parâmetros

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja executar o comando. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Não Raiz do projeto
Args Argumentos de comando Sim

azureAppService/zipDeploy

Amostra

  - uses: azureAppService/zipDeploy
    with:
      workingDirectory: ./src
      artifactFolder: .
      ignoreFile: ./.webappignore
      resourceId: ${{BOT_AZURE_APP_SERVICE_RESOURCE_ID}}
      dryRun: false
      outputZipFile: ./.deployment/deployment.zip

Parameters

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo à raiz do projeto. Não Raiz do projeto
artifactFolder Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Sim
ignoreFile Especifica o caminho do arquivo de ignoreFile usado durante o upload. Esse arquivo pode ser usado para excluir determinados arquivos ou pastas do artefatoFolder. Sua sintaxe é semelhante à ignorar do Git. Não null
resourceId Indica a ID do recurso de um Serviço de Aplicativo do Azure. Ele é gerado automaticamente depois de executar o comando provisionamento. Se você já tiver um Serviço de Aplicativo do Azure, poderá encontrar a ID do recurso Sim
dryRun Você pode definir o parâmetro dryRun como true se quiser apenas testar a preparação do upload e não pretende implantá-lo. Isso ajuda você a verificar se o arquivo zip de empacotamento está correto. Não falso
outputZipFile Indica o caminho do arquivo zip para a pasta artefato empacotado. É relativo ao workingDirectory. Esse arquivo é reconstruído durante a implantação, refletindo todas as pastas e arquivos em seu artefatoFolder e removendo arquivos ou pastas inexistentes. Não ./.deployment/deployment.zip

azureFunctions/zipDeploy

Essa ação carrega e implanta o projeto para Azure Functions usando o recurso de implantação zip.

Amostra

  - uses: azureFunctions/zipDeploy
    with:
      workingDirectory: ./src
      artifactFolder: .
      ignoreFile: ./.webappignore
      resourceId: ${{BOT_AZURE_APP_SERVICE_RESOURCE_ID}}
      dryRun: false
      outputZipFile: ./.deployment/deployment.zip

Parâmetros

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo à raiz do projeto. Não Raiz do projeto
artifactFolder Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Sim
ignoreFile Especifica o caminho do arquivo de ignoreFile usado durante o upload. Esse arquivo pode ser usado para excluir determinados arquivos ou pastas do artefatoFolder. Sua sintaxe é semelhante à ignorar do Git. Não null
resourceId Indica a ID do recurso de um Azure Functions. Ele é gerado automaticamente depois de executar o comando provisionamento. Se você já tiver um Azure Functions, poderá encontrar sua ID de recurso no portal do Azure. Sim
dryRun Você pode definir o parâmetro dryRun como true se quiser apenas testar a preparação do upload e não pretende implantá-lo. Isso ajuda você a verificar se o arquivo zip de empacotamento está correto. Não falso
outputZipFile Indica o caminho do arquivo zip para a pasta artefato empacotado. É relativo ao workingDirectory. Esse arquivo é reconstruído durante a implantação, refletindo todas as pastas e arquivos em seu artefatoFolder e removendo arquivos ou pastas inexistentes. Não ./.deployment/deployment.zip

azureStorage/deploy

Essa ação carrega e implanta o projeto no Armazenamento do Azure.

Amostra

  - uses: azureStorage/deploy
    with:
      workingDirectory: ./src
      artifactFolder: .
      ignoreFile: ./.webappignore
      resourceId: ${{BOT_AZURE_APP_SERVICE_RESOURCE_ID}} 

Parâmetros

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo à raiz do projeto. Não Raiz do projeto
artifactFolder Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Sim
ignoreFile Especifica o caminho do arquivo de ignoreFile usado durante o upload. Esse arquivo pode ser usado para excluir determinados arquivos ou pastas do artefatoFolder. Sua sintaxe é semelhante à ignorar do Git. Não null
resourceId Indica a ID do recurso de um Azure Functions. Ele é gerado automaticamente depois de executar o comando provisionamento. Se você já tiver um Azure Functions, poderá encontrar sua ID de recurso no portal do Azure. Sim

azureStorage/deploy

Essa ação carrega e implanta o projeto no Armazenamento do Azure.

Amostra

  - uses: azureStorage/deploy
    with:
      workingDirectory: ./src
      artifactFolder: .
      ignoreFile: ./.webappignore
      resourceId: ${{BOT_AZURE_APP_SERVICE_RESOURCE_ID}} 

Parâmetros

Parâmetro Descrição Obrigatório Valor padrão
Workingdirectory Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo à raiz do projeto. Não Raiz do projeto
artifactFolder Representa a pasta em que você deseja carregar o artefato. Se o valor de entrada for um caminho relativo, ele será relativo ao workingDirectory. Sim
ignoreFile Especifica o caminho do arquivo de ignoreFile usado durante o upload. Esse arquivo pode ser usado para excluir determinados arquivos ou pastas do artefatoFolder. Sua sintaxe é semelhante à ignorar do Git. Não null
resourceId Indica a ID do recurso de um Azure Functions. Ele é gerado automaticamente depois de executar o comando provisionamento. Se você já tiver um Azure Functions, poderá encontrar sua ID de recurso no portal do Azure. Sim

spfx/deploy

Essa ação carrega e implanta o sppkg gerado no catálogo de aplicativos do SharePoint. Você pode criar o catálogo de aplicativos de locatário manualmente ou definindo createAppCatalogIfNotExist como true se você não tiver um no locatário M365 atual.

Amostra

- uses: spfx/deploy
    with:
      createAppCatalogIfNotExist: false
      packageSolutionPath: ./src/config/package-solution.json

Parâmetros

Parâmetro Descrição Obrigatório Valor padrão
createAppCatalogIfNotExist Se o valor for verdadeiro, essa ação criará o catálogo de aplicativos de locatário primeiro, se não existir. Não Falso
packageSolutionPath Caminho para package-solution.json no projeto SPFx. Esta ação honra a configuração para obter sppkg de destino. Sim

Confira também