Я пытаюсь настроить Jenkins-Job для выпуска Java-проекта с помощью подключаемого модуля Maven-Release-Plugin.
Я хочу убедиться, что основная версия, которую я использую, чтобы пометить выпуск как несовместимый с более ранним основным -Версия, меняется, если текущий Релиз несовместим с предыдущим.
Пример:
Последним выпуском была версия 1.9.5, которая содержала класс с именем Foo.
В текущем выпуске этот класс был удален.< br> Пользователь указывает текущую версию выпуска 1.9.6 и запускает Jenkins-Job.Релиз должен сообщить пользователю, что текущая основная версия, как ожидается, будет 2, а не 1, поскольку API стал несовместимым.
Я подумал об использовании модульных тестов предыдущего выпуска для тестирования кода текущего выпуска. Если какой-либо API стал несовместимым, модульные тесты предыдущего выпуска должны завершиться ошибкой во время компиляции или тестирования (при условии, что для этого кода существует модульный тест).
Мой подход требовал бы держать тесты в отдельном проекте и проверять две версии из моей VCS.
Знаете ли вы о каком-либо Jenkins-Plugin, который может помочь в этом, или у вас есть какие-либо другие идеи о том, как проверить, не стал ли API несовместимым между двумя основными версиями?