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.
Abrir Visual Studio Code.
Abra la carpeta del proyecto en la que creó la aplicación.
Seleccione el icono kit de herramientas de Teams en la barra lateral.
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.
Inicie sesión en su cuenta de Azure con sus credenciales.
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
Seleccione Implementar en la sección CICLO DE VIDA del panel izquierdo.
Seleccione un entorno. (Si solo hay un entorno, se omite este paso).
Seleccione Implementar.
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. | Sí | |
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. | Sí |
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 |