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

O Microsoft 365 Agents Toolkit (anteriormente conhecido como Teams Toolkit) ajuda a implantar ou carregar o código de front-end e back-end do seu aplicativo para seus recursos de nuvem provisionados no Azure.

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

  • Serviços de Aplicativo do 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 dos recursos de nuvem.

Implantar aplicativos do Teams usando o Kit de Ferramentas de Agentes

O guia de introdução ajuda a implantar usando o Kit de Ferramentas de Agentes. Você pode usar o seguinte para implantar seu aplicativo do Teams:

Entrar na sua conta do Azure

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

  1. Abra o Visual Studio Code.

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

  3. Selecione o ícone do Kit de Ferramentas para Agentes do Microsoft 365 na barra lateral.

  4. Selecione Entrar no Azure.

    Dica

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

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

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

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

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

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

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

Implantar no Azure

  1. Selecione Implantar na seção LIFECYCLE no painel esquerdo.

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

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

  3. Selecione Implantar.

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

  4. Selecione o ícone do Kit de Ferramentas para Agentes do Microsoft 365 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 'm365agents.yml'.

cli/runNpmCommand

Essa ação executa comandos npm no 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 na qual 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 do comando Sim

cli/runDotnetCommand

Essa ação executa comandos dotnet no 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

Parameters

Parâmetro Descrição Obrigatório Valor padrão
workingDirectory Representa a pasta na qual 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 npm Argumentos do comando Sim
execPath Caminho do executor Não CAMINHO do sistema

cli/runNpxCommand

Amostra

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

Parameters

Parâmetro Descrição Obrigatório Valor padrão
workingDirectory Representa a pasta na qual 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 do 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 utilizado para excluir determinados arquivos ou pastas do artifactFolder. Sua sintaxe é semelhante à ignorância 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 provisionar. Se você já tiver um Serviço de Aplicativo do Azure, poderá encontrar sua ID de 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 a verificar se o arquivo zip de empacotamento está correto. Não falso
outputZipFile Indica o caminho do arquivo zip para a pasta de artefato empacotada. É relativo ao workingDirectory. Esse arquivo é reconstruído durante a implantação, refletindo todas as pastas e arquivos em sua artifactFolder e removendo todos os arquivos ou pastas inexistentes. Não ./.deployment/deployment.zip

azureFunctions/zipDeploy

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

Amostra

  - uses: azureFunctions/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 utilizado para excluir determinados arquivos ou pastas do artifactFolder. Sua sintaxe é semelhante à ignorância do Git. Não null
resourceId Indica a ID do recurso de um dispositivo do Azure Functions. Ele é gerado automaticamente depois de executar o comando provisionar. 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 a verificar se o arquivo zip de empacotamento está correto. Não falso
outputZipFile Indica o caminho do arquivo zip para a pasta de artefato empacotada. É relativo ao workingDirectory. Esse arquivo é reconstruído durante a implantação, refletindo todas as pastas e arquivos em sua artifactFolder e removendo todos os 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}} 

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 utilizado para excluir determinados arquivos ou pastas do artifactFolder. Sua sintaxe é semelhante à ignorância do Git. Não null
resourceId Indica a ID do recurso de um dispositivo do Azure Functions. Ele é gerado automaticamente depois de executar o comando provisionar. 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}} 

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 utilizado para excluir determinados arquivos ou pastas do artifactFolder. Sua sintaxe é semelhante à ignorância do Git. Não null
resourceId Indica a ID do recurso de um dispositivo do Azure Functions. Ele é gerado automaticamente depois de executar o comando provisionar. 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 não tiver um no locatário atual do M365.

Amostra

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

Parameters

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

Confira também