Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

TeamCity - сбой даты при проверке последнего коммита


(Nikolay Kudryashov) #1

Доброго дня.
Я вручную поменял на короткое время дату на сервере, на котором установлен TeamCity. В это короткое время TeamCity успел подтянуть последние коммиты из bitbucket.org и сейчас в bild history красуется билд с датой прохождения на месяц больше сегодняшней. И всё бы хорошо, но сейчас последние коммиты не затягиваются TeamCity. Как я понял, TeamCity считает устаревшими все коммиты до самой последней даты скачивания обновлений (а у меня это дата на месяц большая сегодняшнего числа).
Подскажите, как можно обновить эту дату в настройках TeamCity (не нашёл где хранится значение)? Или другой способ наладить работу? Спасибо.


(Stan) #2

А что если очистить весь билд хистори? Если конечно оно вам не смертельно надо.


(Nikolay Kudryashov) #3

Да не хотелось бы… Год истории. Это уже в последнюю очередь. Интересно, а можно ли подчистить не всю историю, а только период? Или несколько билдов? Было бы идеально.


(Stan) #4

А зачем хранить хистори за год? Не встречал никогда кейсов, когда нужно было бы больше чем за неделю. Если нужны какие-то показания, имхо их лучше хранить отдельно.

Насчет очистки только части билдов - не уверен. Год назад, как я помню, можно было настроить правила на “хранить n последних дней” или что-то типа того, судя по офф документации там ничего так и не изменилось. С другой стороны можно попробовать очистить руками, но надо готовиться к тому что данные могут быть в куче разных таблиц. С другой стороны можно попробовать просто найти эти данные в базе и просто поменять время.


(Nikolay Kudryashov) #5

Спасибо. Через несколько часов попробую найти в базе. Или очищу хистори. Отпишусь о результатах тут.


(Nikolay Kudryashov) #6

Перекопал базу. Изменил все даты, которые нашёл с 2016 на 2015 год (где-то в DATETIME, где-то в Tick) но проблема осталась. Всё так же не видит последние коммиты. Боюсь, что не поможет и очистка истории билдов. Может, есть ещё идеи?
И историю билдов очистить не получается. Стоит восьмая версия TeamCity.


(Stan) #7

а в самом интерфейсе даты поменялись у всех билдов?


(Nikolay Kudryashov) #8

Да. В интерфейсе даты меняются после изменения в таблице history, они там в тиках забиты. Обновляются они после перезагрузки TeamCity, но последний коммит всё так же остаётся висеть неподхваченным, хотя даты уже адекватные. Где-то всё же сохраняется дата самого позднего взаимодействия с Bitbucket которую я не могу найти.
Сегодня выкручиваюсь тем, что когда у сервера вновь меняю дату на месяц вперёд, эти самые последние коммиты билдятся. И возвращаю сегодняшнюю дату. Танцы с бубном, конечно…


(Stan) #9

Сложно на самом деле что-то посоветовать, так как вы уже сказали - где-то хранится таймстемп, из-за которого и не билдится. Можно лишь пробовать тыкать в небо, что я и пытаюсь сделать) Ручной триггеринг билда я так понимаю не работает?


(Nikolay Kudryashov) #10

Вручную я вижу в “Run Custom Build” только “latest changes at the moment the build is started”, а это только те коммиты, что уже были запущены. Задавать параметром vcs.number тоже ни к чему не приводит. TeamCity упрямо вставляет в Updating sources (это тот шаг, что я вижу в логах) тот revision, который уже был запущен, игнорируя последний коммит.
Всячески искал Clean-Up, который мог бы очистить историю, и позволить запустить с чистого листа, но и после очистки последний коммит остаётся прежним…
Странно, что не могу найти и описания подобного случая в сети. Неужели, только я так извращаюсь с датами?)


(Nikolay Kudryashov) #11

Итак, разрешилось!
Пробовал удалять билды в истории, копаться ещё глубже в базе и файлах TeamCity. А разрешилась проблема переустановкой VCS Roots в Build Configuration Settings -> Version Control Settings. Сменилась папка в которой билдится проект “…\TeamCity\buildAgent\work…”, что повлечёт изменение в настройках сайта, но главное, что новые коммиты подтянулись уже без бубна)
Спасибо st_eremin за помощь и подсказки. Узнал много нового, пока искал)