поместите все модули в одно родительское имя проекта в конвейере Gitlab CICD

# #maven #gitlab #pipeline #cicd

#знаток #gitlab #трубопровод #cicd

Вопрос:

Мой проект основан на Maven и имеет различные подмодули.

 Main_prj_name   submodule1  src  pom.xml  submodule2  src  pom.xml  .gitlab-ci.yml pom.xml  

Я использую конвейер gitlab для его сборки и выпуска в Nexus repo manager. Все работает хорошо, за исключением того, что, когда rpm выпускается на Nexus, он выпускается отдельно для каждого модуля. Я хочу, чтобы он был объединен в одно родительское имя (Main_prj_name), которое должно содержать подмодули внутри.

главная pom.xml

 lt;groupIdgt;com.abc.zyxlt;/groupIdgt; lt;namegt;Main_prj_namelt;/namegt; lt;artifactIdgt;Main_prj_name_2.11lt;/artifactIdgt; lt;packaginggt;pomlt;/packaginggt; lt;versiongt;1.1-SNAPSHOTlt;/versiongt;  lt;modulesgt;  lt;modulegt;submodule1lt;/modulegt;  lt;modulegt;submodule2lt;/modulegt; lt;modulesgt;   

подмодуль pom.xml

 lt;artifactIdgt;submodule1_2.11lt;/artifactIdgt;   lt;parentgt;  lt;artifactIdgt;My_proj_name_2.11lt;/artifactIdgt;  lt;groupIdgt;com.abc.xyzlt;/groupIdgt;  lt;versiongt;1.1-SNAPSHOTlt;/versiongt;  lt;relativePathgt;../pom.xmllt;/relativePathgt; lt;/parentgt;   

Комментарии:

1. Пожалуйста, добавьте соответствующие области информации… как вы писали, вы выпускаете rpm ? Как и где производится / настраивается частота вращения ? Как называется Maven и т. Д. ? Это все миссия?

2. спасибо за ответ @khmarbaise , поэтому мой конвейер состоит из 2 этапов: 1 — й-сборка, которая создает проект ( mvn clean install ), а второй-выпуск ( mvn release:prepare за которым следует mvn release:perform ), который генерирует обороты.

3. Во-первых, я сомневаюсь, что вы генерируете обороты только на этапе выпуска, если ваша сборка звучит неправильно… кроме того, мне нужна более подробная информация: как выполняется настройка? Является ли сборка rpm с помощью Maven или с помощью внешнего инструмента? если да, то как? и т. Д. Также, почему использование mvn clean install не mvn clean verify было бы достаточным?