Поделиться через


Использование Azure Pipelines с Slack

Azure DevOps Services

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

Примечание.

Эта функция доступна только в Azure DevOps Services. Как правило, новые функции впервые вводятся в облачной службе, а затем становятся доступными в локальной среде в следующей основной версии или обновлении Azure DevOps Server. Дополнительные сведения см. в статье "Временная шкала компонентов Azure DevOps".

Необходимые компоненты

  • Учетная запись Slack с разрешением на установку приложения в рабочую область Slack.
  • Проект Azure DevOps с разрешениями администраторов коллекции проектов или администраторов проектов .

Установка приложения Azure Pipelines

Установите приложение Azure Pipelines Slack в рабочую область Slack. После установки приложения появится следующее приветственное сообщение. Введите /azpipelines , чтобы начать взаимодействие с приложением.

Снимок экрана: приветственное сообщение о приложении Azure Pipelines.

Подключение к конвейеру

После установки приложения в рабочей области Slack вы можете подключить приложение к любому конвейеру, который вы хотите отслеживать. Перед выполнением любых команд необходимо пройти проверку подлинности в Azure Pipelines.

Снимок экрана: сообщение запроса для входа.

Подписка на конвейеры

Чтобы начать мониторинг всех конвейеров в проекте, введите /azpipelines subscribe <project url> канал, заменив <project url> URL-адрес проекта Azure DevOps. URL-адрес проекта может ссылаться на любую страницу проекта, кроме страниц конвейера, например /azpipelines subscribe https://dev.azure.com/myorg/myproject/.

Вы можете отслеживать определенный конвейер с помощью /azpipelines subscribe <pipeline url>. URL-адрес конвейера может ссылаться на любую страницу в конвейере с definitionId URL-адресом или url-адресом buildId/releaseId . Например:

  • /azpipelines subscribe https://dev.azure.com/myorg/myproject/_build?definitionId=123
  • /azpipelines subscribe https://dev.azure.com/myorg/myproject/_release?definitionId=123&view=mine&_a=releases

Команда subscribe подписывается на следующие уведомления по умолчанию:

  • Для конвейеров YAML:
    • Изменено состояние этапа выполнения
    • Этап выполнения, ожидающий утверждения
  • Для классических конвейеров сборки завершены сборки
  • Для конвейеров классических выпусков:
    • Развертывание выпуска началось
    • Развертывание выпуска завершено
    • Ожидание утверждения развертывания выпуска

Снимок экрана: пример уведомления.

Управление подписками

Чтобы управлять подписками для канала, введите /azpipelines subscriptions. Эта команда содержит список всех текущих подписок для канала и позволяет добавлять или удалять подписки.

Снимок экрана: список подписок.

Примечание.

Администраторы группы не могут удалять или изменять подписки, созданные администраторами проектов.

Настройка подписок

Подписки по умолчанию не применяются, но эти подписки можно настроить в соответствии с вашими предпочтениями. Например, может потребоваться получать уведомления только для неудачных сборок или развертываний в рабочей среде. Фильтры можно применить для настройки сообщений, которые вы получаете в канале.

Чтобы настроить подписку, выполните следующее:

  1. /azpipelines subscriptions Выполните команду, чтобы вывести список всех подписок.
  2. Выберите Добавить подписку.
  3. Выберите событие, на которое вы хотите подписаться, а затем выберите нужную конфигурацию.
  4. Выберите Сохранить.

Например, чтобы получать уведомления только для неудачных сборок, выберите "Сбой " в разделе "Состояние сборки".

Снимок экрана: настройка подписки.

Утверждение развертываний

Вы можете утвердить развертывания из канала Slack, не перейдя в Azure Pipelines. Подпишитесь на этап выполнения, ожидая уведомлений о утверждении для конвейеров YAML или ожидающих уведомлений о развертывании выпуска для классических выпусков. Обе эти подписки создаются по умолчанию при подписке на конвейер.

Снимок экрана: утверждение конвейера в Slack.

Приложение Azure Pipelines для Slack позволяет обрабатывать все сценарии проверки и утверждения, доступные на портале Azure Pipelines. К этим сценариям относятся один утверждающий, несколько утверждающих и командное утверждение. Вы можете утвердить запросы отдельно или от имени команды.

Снимок экрана: конвейер предварительного развертывания, утвержденный в Slack.

Удаление всех подписок

Чтобы отключить канал, можно использовать /azpipelines unsubscribe all <project url> команду для отмены подписки на все конвейеры в проекте. Например, /azpipelines unsubscribe all https://dev.azure.com/myorg/myproject.

Внимание

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

Справочник по командам

Приложение Azure Pipelines для Slack поддерживает следующие команды:

Команда Description
/azpipelines subscribe <pipeline url or project url> Подписываться на конвейер или все конвейеры в проекте и получать уведомления.
/azpipelines subscriptions Добавление или удаление подписок для этого канала.
/azpipelines feedback Сообщите о проблеме или предложите функцию.
/azpipelines help Получите справку по командам.
/azpipelines signin Войдите в учетную запись Azure Pipelines.
/azpipelines signout Выйдите из учетной записи Azure Pipelines.
/azpipelines unsubscribe all <project url> Удалите все конвейеры проекта и связанные с ними подписки из канала.

Уведомления в частных каналах

Приложение Azure Pipelines также может помочь отслеживать действия конвейеров в частных каналах. Вам нужно пригласить бота в частный канал с помощью /invite @azpipelines. После добавления бота вы можете настроить и управлять уведомлениями так же, как и для общедоступного канала.

Условия и ограничения

  • Приложение Azure Pipelines можно использовать только для Slack с Azure DevOps Services.
  • Чтобы настроить подписки, необходимо быть администратором проекта, содержащего конвейер.
  • Уведомления не поддерживаются в прямых сообщениях.
  • Утверждения развертывания с удостоверением утверждающего повторного утверждения перед выполнением политики утверждения не поддерживаются.
  • Чтобы использовать приложение, сторонний доступ к приложению через OAuth должен быть включен в политиках>безопасности параметров безопасности>Организации Azure DevOps.

Устранение неполадок

Если при использовании приложения Azure Pipelines для Slack возникают следующие ошибки, попробуйте выполнить описанные в этом разделе процедуры.

Произошла ошибка. Повторите попытку.

Приложение Azure Pipelines использует протокол проверки подлинности OAuth и требует включения доступа к сторонним приложениям через OAuth . Чтобы включить этот параметр, перейдите к политикам>безопасности>параметров организации и включите доступ к сторонним приложениям через OAuth.

Снимок экрана, на котором показано, как включить сторонний доступ через OAuth.

Сбой конфигурации. Убедитесь, что организация существует и у вас есть достаточные разрешения.

  1. Войдите из Azure DevOps, перейдя по адресу https://aka.ms/VsSignout.

  2. В частном окне браузера инкогнито перейдите к https://aex.dev.azure.com/me ней и войдите в систему. Обязательно выберите каталог, содержащий организацию с конвейером.

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

  3. В том же браузере откройте новую вкладку и перейдите к https://slack.comней. Войдите в рабочую область с помощью веб-клиента, а затем выполните следующую /azpipelines signinкоманду/azpipelines signout.

  4. Выберите кнопку Sign in. Если вы перенаправляетесь на страницу согласия, убедитесь, что каталог, отображаемый рядом с адресом электронной почты, совпадает с тем, на который вы вошли.