Развертывание приложения Microsoft Teams в облаке с помощью Microsoft Visual Studio Code

Microsoft Teams Toolkit помогает развертывать или передавать интерфейсный и внутренний код в приложении в подготовленные облачные ресурсы в Azure.

Вы можете выполнить развертывание в следующих типах облачных ресурсов:

  • Службы приложение Azure
  • Функции Azure
  • Служба хранилища Azure (как статический веб-сайт)
  • SharePoint

Примечание.

Перед развертыванием кода приложения в облаке Azure необходимо успешно завершить подготовку облачных ресурсов.

Развертывание приложений Teams с помощью набора средств Teams

Руководство по началу работы поможет развернуть с помощью набора средств Teams. Для развертывания приложения Teams можно использовать следующие руководства.

Вход в учетную запись Azure

Используйте эту учетную запись для доступа к портал Azure Майкрософт и подготовки новых облачных ресурсов для поддержки приложения. Перед развертыванием приложения в Служба приложений Azure, Функции Azure или службе хранилища Azure необходимо войти в учетную запись Azure.

  1. Откройте Visual Studio Code.

  2. Откройте папку проекта, в которой вы создали приложение.

  3. Щелкните значок Набора средств Teams на боковой панели.

  4. Выберите Войти в Azure.

    Совет

    Если у вас установлено расширение учетной записи Azure и вы используете ту же учетную запись, этот шаг можно пропустить. Используйте ту же учетную запись, что и в других расширениях.

    Откроется веб-браузер по умолчанию, чтобы позволить вам войти в учетную запись.

  5. Войдите в учетную запись Azure, используя свои учетные данные.

  6. Закройте браузер при появлении запроса и вернитесь к Visual Studio Code.

В разделе ACCOUNTS боковой панели отображаются две учетные записи по отдельности. В нем также отображается количество доступных для использования подписок Azure. Убедитесь, что у вас есть по крайней мере одна доступная подписка Azure. В противном случае выйдите из нее и используйте другую учетную запись.

Теперь вы готовы к развертыванию приложения в Azure!

Поздравляем, вы создали приложение Teams! Теперь давайте рассмотрим, как развернуть одно из приложений в Azure с помощью набора средств Teams.

Развертывание в Azure

  1. Выберите Развернуть в разделе Жизненный цикл в левой области.

    Снимок экрана: выбор элемента

  2. Выберите среду. (Если существует только одна среда, этот шаг пропускается.)

  3. Нажмите Развернуть.

    Снимок экрана: выбор параметра Развернуть в Visual Studio Code.

  4. Щелкните значок Набора средств Teams на боковой панели.

Настройка жизненного цикла развертывания в Teams

Чтобы настроить процесс развертывания, можно изменить разделы развертывания в разделе "teamsapp.yml".

cli/runNpmCommand

Это действие выполняет команды npm в указанном каталоге с параметрами.

Пример

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

Параметры

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которой требуется выполнить команду. Если входное значение является относительным путем, оно относится к рабочему каталогу. Нет Корневой каталог проекта
Args Аргументы команды Да

cli/runDotnetCommand

Это действие выполняет команды dotnet в указанном каталоге с параметрами.

Пример

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

Параметры

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которой требуется выполнить команду. Если входное значение является относительным путем, оно относится к рабочему каталогу. Нет Корневой каталог проекта
Args Аргументы команды npm Да
execPath Путь к исполнителю Нет System PATH

cli/runNpxCommand

Пример

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

Parameters

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которой требуется выполнить команду. Если входное значение является относительным путем, оно относится к рабочему каталогу. Нет Корневой каталог проекта
Args Аргументы команды Да

azureAppService/zipDeploy

Пример

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

Parameters

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к корню проекта. Нет Корневой каталог проекта
artifactFolder Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к рабочему каталогу. Да
ignoreFile Указывает путь к файлу ignoreFile, используемый во время отправки. Этот файл можно использовать для исключения определенных файлов или папок из artifactFolder. Его синтаксис похож на игнорирование Git. Нет null
resourceId Указывает идентификатор ресурса Служба приложений Azure. Он создается автоматически после выполнения команды подготовки. Если у вас уже есть Служба приложений Azure, вы можете найти его идентификатор ресурса. Да
dryRun Параметру dryRun можно задать значение true, если требуется только протестировать подготовку отправки и не планируется развертывать ее. Это помогает убедиться, что ZIP-файл упаковки правильный. Нет false
outputZipFile Указывает путь к ZIP-файлу для упакованой папки артефактов. Он относится к рабочему каталогу. Этот файл восстанавливается во время развертывания, отражая все папки и файлы в artifactFolder и удаляя все несуществующие файлы или папки. Нет ./.deployment/deployment.zip

azureFunctions/zipDeploy

Это действие отправляет и развертывает проект в Функции Azure с помощью функции zip-развертывания.

Пример

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

Parameters

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к корню проекта. Нет Корневой каталог проекта
artifactFolder Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к рабочему каталогу. Да
ignoreFile Указывает путь к файлу ignoreFile, используемый во время отправки. Этот файл можно использовать для исключения определенных файлов или папок из artifactFolder. Его синтаксис похож на игнорирование Git. Нет null
resourceId Указывает идентификатор ресурса Функции Azure. Он создается автоматически после выполнения команды подготовки. Если у вас уже есть Функции Azure, его идентификатор ресурса можно найти в портал Azure. Да
dryRun Параметру dryRun можно задать значение true, если требуется только протестировать подготовку отправки и не планируется развертывать ее. Это помогает убедиться, что ZIP-файл упаковки правильный. Нет false
outputZipFile Указывает путь к ZIP-файлу для упакованой папки артефактов. Он относится к рабочему каталогу. Этот файл восстанавливается во время развертывания, отражая все папки и файлы в artifactFolder и удаляя все несуществующие файлы или папки. Нет ./.deployment/deployment.zip

azureStorage/deploy

Это действие отправляет и развертывает проект в службу хранилища Azure.

Пример

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

Параметры

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к корню проекта. Нет Корневой каталог проекта
artifactFolder Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к рабочему каталогу. Да
ignoreFile Указывает путь к файлу ignoreFile, используемый во время отправки. Этот файл можно использовать для исключения определенных файлов или папок из artifactFolder. Его синтаксис похож на игнорирование Git. Нет null
resourceId Указывает идентификатор ресурса Функции Azure. Он создается автоматически после выполнения команды подготовки. Если у вас уже есть Функции Azure, его идентификатор ресурса можно найти в портал Azure. Да

azureStorage/deploy

Это действие отправляет и развертывает проект в службу хранилища Azure.

Пример

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

Parameters

Параметр Описание Обязательный Значение по умолчанию
Workingdirectory Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к корню проекта. Нет Корневой каталог проекта
artifactFolder Представляет папку, в которую требуется отправить артефакт. Если входное значение является относительным путем, оно относится к рабочему каталогу. Да
ignoreFile Указывает путь к файлу ignoreFile, используемый во время отправки. Этот файл можно использовать для исключения определенных файлов или папок из artifactFolder. Его синтаксис похож на игнорирование Git. Нет null
resourceId Указывает идентификатор ресурса Функции Azure. Он создается автоматически после выполнения команды подготовки. Если у вас уже есть Функции Azure, его идентификатор ресурса можно найти в портал Azure. Да

spfx/deploy

Это действие отправляет и развертывает созданный sppkg в каталог приложений SharePoint. Вы можете создать каталог приложений клиента вручную или задав для createAppCatalogIfNotExist значение true, если у вас нет каталога приложений в текущем клиенте M365.

Пример

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

Параметры

Параметр Описание Обязательный Значение по умолчанию
createAppCatalogIfNotExist Если значение равно true, это действие сначала создает каталог приложений клиента, если он не существует. Нет Неверно
packageSolutionPath Путь к package-solution.json в проекте SPFx. Это действие учитывает конфигурацию для получения целевого sppkg. Да

См. также