У меня есть веб-проект, разбитый на несколько артефактов maven.Избегайте множественной загрузки артефакта релиза в nexus от Jenkins
Пусть говорят, что это:
- A, баночка
- B, баночка
- C, баночка
- D, война
Таким образом, D имеет зависимость от B и C. B имеет зависимость от A.
Эти версии модулей не являются всегда синхронный.
А может быть на версии 3-SNAPSHOT В то время как все еще находится в версии 5 с зависимостью от версии 2.
Я настроен Дженкинс каскада сборки B, когда А построен, D, когда В или С построено , Эти модули также восстанавливаются при обнаружении изменений в репозитории git. Артефакты автоматически развертываются в хранилище nexus посредством действия post-build.
Итак, если я нажму в git новую версию 3-SNAPSHOT из A, то бачок 3-SNAPSHOT будет построен и сдвинут в нексус. Но из-за зависимости Jenkins запускается новая версия B версии 2 (версия). Сама сборка идет нормально, но развертывание в nexus завершается неудачно, поскольку я не разрешаю повторное развертывание артефактов выпуска.
Как я могу избежать этой ситуации? Не пытайтесь загрузить в nexus, когда артефакт имеет версию выпуска, и эта версия уже существует в nexus, будет приемлемой.
Я использую Jenkins 1.480 и maven 3.0.4.