Я пытаюсь выпустить библиотеку с помощью Maven и выполнить развертывание сайта в sourceforge (сначала я создал интерактивную оболочку). Релиз выполняется по заданию Дженкинса (с использованием Maven Release Plugin для Jenkins).
Я пробовал:
-X -e -Dresume=false -Dusername=puce release:prepare release:perform -Darguments="-Dusername=puce"
и
-X -e -Dresume=false -Dusername=puce -Darguments=-Dusername=puce release:prepare release:perform
но оба раза работа зависает на сайте: развертывание первого модуля:
[INFO] --- maven-site-plugin:3.2:deploy (default-deploy) @ myproject-parent ---
[INFO] Parent project loaded from repository: myGroupId:myOtherproject-parent:pom:1.0
[INFO] Parent project loaded from repository: myGroupId:myOtherproject-parent:pom:1.0
Using private key: /opt/jenkins/.ssh/id_dsa
Когда я останавливаю работу, в конце печатается следующее:
Password for ${username}@shell.sourceforge.net: channel stopped
что, вероятно, означает, что ${username} не был разрешен.
Как я могу разрешить ${username}?
Edit:
Обратите внимание, что выполняется следующее выполнение:
site-deploy -Psonatype-oss-release -Dusername=puce
Изменить 2: Как часть выпуска: выполнить maven выполняет следующую команду:
/usr/share/maven/bin/mvn -s /tmp/release-settings7797889802430474959.xml deploy site-deploy --no-plugin-updates --batch-mode -Psonatype-oss-release -P nexus -f pom.xml
-Dusername=puce
, похоже, не передается этой команде maven...
Также обратите внимание, что help: effective-pom показывает следующую конфигурацию maven-release-плагина:
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.2</version>
<configuration>
<mavenExecutorId>forked-path</mavenExecutorId>
<useReleaseProfile>false</useReleaseProfile>
<arguments>-Psonatype-oss-release</arguments>
</configuration>
</plugin>
Таким образом, "аргументы" определяются и его значение, похоже, достигает встроенной команды maven вместо значения, переданного в командной строке...