Implementación de una aplicación de Microsoft Teams en la nube mediante Microsoft Visual Studio Code

Microsoft Teams Toolkit ayuda a implementar o cargar el código front-end y back-end de la aplicación en los recursos de nube aprovisionados en Azure.

Puede implementar en los siguientes tipos de recursos en la nube:

  • Azure App Services
  • Azure Functions
  • Azure Storage (como sitio web estático)
  • SharePoint

Nota:

Antes de implementar el código de la aplicación en la nube de Azure, debe completar correctamente el aprovisionamiento de recursos en la nube.

Implementar aplicaciones de Teams con el kit de herramientas de Teams

La guía Introducción ayuda a implementar con teams Toolkit. Puede usar lo siguiente para implementar su aplicación de Teams:

Inicio de sesión en su cuenta de Azure

Use esta cuenta para acceder a Microsoft Azure Portal y aprovisionar nuevos recursos en la nube para admitir la aplicación. Antes de implementar la aplicación en Azure App Service, Azure Functions o Azure Storage, debe iniciar sesión en su cuenta de Azure.

  1. Abrir Visual Studio Code.

  2. Abra la carpeta del proyecto en la que creó la aplicación.

  3. Seleccione el icono kit de herramientas de Teams en la barra lateral.

  4. Seleccione Iniciar sesión en Azure.

    Sugerencia

    Si tiene instalada la extensión cuenta de Azure y usa la misma cuenta, puede omitir este paso. Use la misma cuenta que usa en otras extensiones.

    Se abre el explorador web predeterminado para permitirle iniciar sesión en la cuenta.

  5. Inicie sesión en su cuenta de Azure con sus credenciales.

  6. Cierre el explorador cuando se le solicite y vuelva a Visual Studio Code.

La sección ACCOUNTS de la barra lateral muestra las dos cuentas por separado. También muestra el número de suscripciones de Azure utilizables disponibles. Asegúrese de que tiene al menos una suscripción de Azure utilizable disponible. Si no es así, cierre la sesión y use otra cuenta.

Ahora está listo para implementar la aplicación en Azure.

Enhorabuena, ha creado una aplicación de Teams. Ahora vamos a continuar y aprender a implementar una de las aplicaciones en Azure mediante el kit de herramientas de Teams.

Implementación en Azure

  1. Seleccione Implementar en la sección CICLO DE VIDA del panel izquierdo.

    Captura de pantalla que muestra la selección de Implementar.

  2. Seleccione un entorno. (Si solo hay un entorno, se omite este paso).

  3. Seleccione Implementar.

    Captura de pantalla que muestra la selección de Implementar en Visual Studio Code.

  4. Seleccione el icono kit de herramientas de Teams en la barra lateral.

Personalización del ciclo de vida de implementación en Teams

Para personalizar el proceso de implementación, puede editar las secciones de implementación en "teamsapp.yml".

cli/runNpmCommand

Esta acción ejecuta comandos npm en el directorio especificado con parámetros.

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea ejecutar el comando. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory. No Raíz del proyecto
args Argumentos de comando Yes

cli/runDotnetCommand

Esta acción ejecuta comandos dotnet en el directorio especificado con parámetros.

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea ejecutar el comando. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory. No Raíz del proyecto
args Argumentos de comando npm Yes
execPath Ruta de acceso del ejecutor No Ruta de acceso del sistema

cli/runNpxCommand

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea ejecutar el comando. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory. No Raíz del proyecto
args Argumentos de comando Yes

azureAppService/zipDeploy

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a la raíz del proyecto. No Raíz del proyecto
artifactFolder Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory. Yes
ignoreFile Especifica la ruta de acceso del archivo ignoreFile usada durante la carga. Este archivo se puede usar para excluir determinados archivos o carpetas de artifactFolder. Su sintaxis es similar a la omisión de Git. No nulo
resourceId Indica el identificador de recurso de una instancia de Azure App Service. Se genera automáticamente después de ejecutar el comando de aprovisionamiento. Si ya tiene una instancia de Azure App Service, puede encontrar su identificador de recurso. Yes
dryRun Puede establecer el parámetro dryRun en true si solo quiere probar la preparación de la carga y no piensa implementarla. Esto le ayuda a comprobar que el archivo zip de empaquetado es correcto. No false
outputZipFile Indica la ruta de acceso del archivo ZIP para la carpeta de artefactos empaquetada. Es relativo a workingDirectory. Este archivo se reconstruye durante la implementación, reflejando todas las carpetas y archivos de artifactFolder y quitando los archivos o carpetas inexistentes. No ./.deployment/deployment.zip

azureFunctions/zipDeploy

Esta acción carga e implementa el proyecto en Azure Functions mediante la característica de implementación zip.

Ejemplo

  - 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 Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a la raíz del proyecto. No Raíz del proyecto
artifactFolder Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory. Yes
ignoreFile Especifica la ruta de acceso del archivo ignoreFile usada durante la carga. Este archivo se puede usar para excluir determinados archivos o carpetas de artifactFolder. Su sintaxis es similar a la omisión de Git. No nulo
resourceId Indica el identificador de recurso de una instancia de Azure Functions. Se genera automáticamente después de ejecutar el comando de aprovisionamiento. Si ya tiene una instancia de Azure Functions, puede encontrar su identificador de recurso en Azure Portal. Yes
dryRun Puede establecer el parámetro dryRun en true si solo quiere probar la preparación de la carga y no piensa implementarla. Esto le ayuda a comprobar que el archivo zip de empaquetado es correcto. No false
outputZipFile Indica la ruta de acceso del archivo ZIP para la carpeta de artefactos empaquetada. Es relativo a workingDirectory. Este archivo se reconstruye durante la implementación, reflejando todas las carpetas y archivos de artifactFolder y quitando los archivos o carpetas inexistentes. No ./.deployment/deployment.zip

azureStorage/deploy

Esta acción carga e implementa el proyecto en Azure Storage.

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a la raíz del proyecto. No Raíz del proyecto
artifactFolder Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory.
ignoreFile Especifica la ruta de acceso del archivo ignoreFile usada durante la carga. Este archivo se puede usar para excluir determinados archivos o carpetas de artifactFolder. Su sintaxis es similar a la omisión de Git. No nulo
resourceId Indica el identificador de recurso de una instancia de Azure Functions. Se genera automáticamente después de ejecutar el comando de aprovisionamiento. Si ya tiene una instancia de Azure Functions, puede encontrar su identificador de recurso en Azure Portal.

azureStorage/deploy

Esta acción carga e implementa el proyecto en Azure Storage.

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
workingDirectory Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a la raíz del proyecto. No Raíz del proyecto
artifactFolder Representa la carpeta donde desea cargar el artefacto. Si el valor de entrada es una ruta de acceso relativa, es relativa a workingDirectory. Yes
ignoreFile Especifica la ruta de acceso del archivo ignoreFile usada durante la carga. Este archivo se puede usar para excluir determinados archivos o carpetas de artifactFolder. Su sintaxis es similar a la omisión de Git. No nulo
resourceId Indica el identificador de recurso de una instancia de Azure Functions. Se genera automáticamente después de ejecutar el comando de aprovisionamiento. Si ya tiene una instancia de Azure Functions, puede encontrar su identificador de recurso en Azure Portal. Yes

spfx/deploy

Esta acción carga e implementa sppkg generado en el catálogo de aplicaciones de SharePoint. Puede crear el catálogo de aplicaciones de inquilino manualmente o estableciendo createAppCatalogIfNotExist en true si no tiene uno en el inquilino M365 actual.

Ejemplo

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

Parámetros

Parámetro Descripción Obligatorio Valor predeterminado
createAppCatalogIfNotExist Si el valor es true, esta acción crea primero el catálogo de aplicaciones de inquilino si no existe. No Falso
packageSolutionPath Ruta de acceso a package-solution.json en el proyecto SPFx. Esta acción respeta la configuración para obtener sppkg de destino. Yes

Vea también