У меня есть веб-сервис, написанный в Clojure, который непрерывно доставляется. Чтобы наши инструменты автоматического развертывания знали, какая версия базы данных была развернута, веб-служба должна предоставить способ запроса, какая версия. Версия объявлена как часть настройки проекта в инструменте Leiningen, например:
(defproject my-web-service "1.2-SNAPSHOT"
; ... rest of project.clj
)
Кодовая база упакована как файл JAR.
Мы, разработчики, не хотим увеличивать номер версии на каждой фиксации. Вместо этого мы хотим, чтобы он автоматически увеличивался, всякий раз, когда на нашем сервере непрерывной интеграции (в данном случае Jenkins) запускается новая сборка. Например, когда проверка контроля версий запрашивает сорок вторую сборку этой кодовой базы, версия 1.2.42
.
Для любого конкретного JAR, который был построен и развернут, я хочу как-то разрешить запрос номера версии (например, с HTTP-запросом, но это деталь реализации). Ответ должен содержать строку 1.2.42
.
Как мне сделать этот номер версии доступным для запущенного приложения?
(Возможный дубликат, хотя он не включает аспект Дженкинса: Вставить строку версии из проекта leiningen в приложение)