Когда вы запускаете длинную конфигурацию сборки Maven в TeamCity, может быть сложно узнать, какой модуль собирается в
данный момент, поскольку все дисплеи TeamCity либо
«Работают», либо
«Тесты пройдены: Х» .
К счастью, TeamCity позволяет вашему сценарию сборки взаимодействовать с сервером с помощью служебных сообщений . Когда вы создаете сценарий, выдает следующую команду, TeamCity читает ее и ведет себя соответственно.
Таким образом, можно сообщать о результатах компиляции или тестирования , публиковать артефакты (вы можете найти сообщения «## teamcity [publishArtifacts» в журнале сборки IntelliJ IDEA ) и даже обновлять параметры сборки на лету. Однако, что меня заинтересовало, так это отчет о ходе сборки :
Добавление одного println в сборку Maven можно выполнить с помощью небольшого количества скриптов Groovy:
После добавления этого фрагмента в родительский POM проекта индикатор выполнения становится (смотрите его вживую! )
И сейчас я работаю над тем, чтобы сделать эту функциональность встроенной для TeamCity 7.1.
Тот же трюк можно использовать в Gradle, но он менее необходим, поскольку TeamCity уже сообщает о ходе выполнения задач Gradle. В любом случае, если вам интересно, возьмите этот код: