У нас есть небольшая среда разработки Java, в которой используются gradle, Jenkins и Git. Мы используем встроенный плагин Gradle для увеличения номеров сборки, используя файл для хранения текущего номера. Номер сборки запекается в каждой сборке как часть данных о версии. Файл номера сборки проверен в рабочей области git для проекта.
Сейчас мы добавляем Jenkins в среду для CI. У Jenkins есть собственный номер сборки, к которому мы можем получить доступ через env var $ BUILD_NUMBER.
Недостатком нашего собственного плагина номера сборки Gradle является то, что он использует локальный файл и, следовательно, сборки нескольких разработчиков не синхронизируют номера сборки. Если мы используем Jenkins BUILD_NUMBER, то это будет совершенно другая последовательность, чем плагин для номера сборки Gradle.
Какова лучшая практика для этого типа сценария?