В этом посте будет рассказано о том как сделать интеграцию Youtrack со встроенным (embedded) Hub с Teamcity, Gitlab. YouTrack — коммерческая система отслеживания ошибок, программное обеспечение для управления проектами. YouTrack поддерживает поисковые запросы, автодополнение, манипуляцию с наборами задач, настройку набора атрибутов задачи, создание пользовательских рабочих процессов и реализует подход, основанный на преимущественном использовании клавиатуры. TeamCity — интеллектуальный сервер непрерывной интеграции. GitLab — веб-инструмент жизненного цикла DevOps с открытым исходным кодом, представляющий систему управления репозиториями кода для Git с собственной вики, системой отслеживания ошибок, CI/CD пайплайном и другими функциями.  Необходимо чтобы все инструменты резолвились по DNS. Если инструменты не будут резолвиться по DNS, то у вас часть функционала не будет работать. Youtrack Teamcity После установки YouTrack со встроенным (embedded) Hub, Teamcity, Gitlab имеется возможность сделать следующие интеграции:  Создадим одинаковый проект в Youtrack, Teamcity и Gitlab.  В Teamcity подключен VCS, который отображается на скриншоте с Gitlab.   В YouTrack создана issue c номером P1-1. Задача: необходимо закрывать Issue в YouTrack после успешной сборки в Teamcity, используя номер Issue и команду Fixed в commit.  Переходим в Build Server Integration. Подключаем Build Server в YouTrack.  Интеграцию YouTrack c TeamCity нужно делать попроектно. Для этого в поле Main YouTrack project указываем проект в YouTrack. В поле TeamCity project указываем проект в TeamCity. В поле TeamCity build указываем таску в TeamCity, в которой будет собираться ваш проект. Можно выставить Fixed in build в поле Add build numbers to the set of values in a custom field. В YouTrack будет указано в каком билде исправлена эта issue.  Если вы видите сообщение The VCS user name does not match any user in YouTrack., то вам нужно проверить и сравнить VCS user name в git user.name и в настройках вашего пользователя. Мне git log показал мои старые данные от прошлых экспериментов. Вам нужно либо создать нужно пользователя или добавить name и email в профиль пользователя. Так же если вы нажмете на коммит 4643208d, то вы перейдете в TeamCity где увидите ошибку Unknown (none of TeamCity users defined user1 username in their VCS username settings). TeamCity пишет что у него нет пользователя с именем user1. Поэтому нужно его добавить в TeamCity.  Если у вас Unknown command: Fixed, то это значит что ваш пользователь, который пытается закрыть issue, не имеет права это делать.  Добавляем юзеру user1 роль Developer в проекте project1.  После этого делаем еще один текстовый коммит, который закрывает issue. Мы видим что ошибок нет, state перешел в состояние Fixed, в поле Fixed in Build проставилась номер таски в TeamCity, в котором закрылась эта issue. Чтобы продемонстрировать чистую VCS Integrations отключим интеграцию с TeamCity.  В Main YouTrack project укажите нужный проект, выбрите Gitlab, в Repository URL нужно указать полный URL до нужного репозитория, в Personal access token нужно указать api токен. Нажимаем Generate token и откроется Access Tokens в User Settings вашего текущего пользователя.  Генерируем токен для api. Почему не подходят другие scope? Потому что Youtrack создает на сервере Gitlab webhook. Указываем токен в Personal access token. И создаем интеграцию. После создания интеграции проверяем что Youtrack создал на сервере Gitlab webhook. Идем в projects1 -> Webhook Settings. Youtrack создает на сервере Gitlab webhook.  Далее нужно разрешить webhook в локальной сети. Далее переходим: Admin -> Settings -> Network -> Outbound Requests -> Allow requests to the local network from hooks and services Если этого не сделать, у вас будут ошибки: Unable to save project. Error: Import url is blocked: Requests to the local network are not allowed Сделаем коммит в репозиторий.  В YouTrack увидим что issue закрылся и увидим всплываеющее сообщение об изменении VCS. DevOps-инженер