Инструмент командной строки для анализа XML и запуска XPath для CI / CD - PullRequest
0 голосов
/ 28 июня 2018

Для проектов Maven, работающих на CD, нам часто нужно ссылаться на текущую версию проекта (я думаю, что это довольно универсальная проблема для всех, кто делает сборки Java)

Например, может потребоваться найти шаблон артефакта на основе версии или скопировать артефакт в корзину S3, названную в честь текущей версии, объявленной в POM

Однако мне было невероятно трудно получить данные из POM. Лучшее, что я мог найти, было:

mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -Ev '(^\[|Download)' > target/version.txt

что кажется хаки ...

есть ли утилита командной строки linux, доступная через менеджер пакетов, который может просто проанализировать файл XML и запустить XPath? Если такой вещи не существует, я мог бы рассмотреть вопрос о создании

Я спрашиваю, потому что меня удивляет, как часто эта функция требуется в сборках и как мало я смог найти с точки зрения популярного решения

1 Ответ

0 голосов
/ 28 июня 2018

Сначала вы должны настроить на использование maven-help-plugin версии 3.1.0 , а затем получить версию, подобную этой:

RESULT=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
echo $RESULT

Или вы также можете пойти явным путем:

RESULT=$(mvn org.apache.maven.plugins:maven-help-plugin:3.1.0:evaluate -Dexpression=project.version -q -DforceStdout)
echo $RESULT

Более подробную информацию можно найти в моем блоге .

...