remoteRepository ignores password settings in .m2/settings.xml
--------------------------------------------------------------
Key: MANTTASKS-222
URL: https://jira.codehaus.org/browse/MANTTASKS-222
Project: Maven 2.x Ant Tasks
Issue Type: Bug
Components: deploy task
Affects Versions: 2.1.3
Environment: Apache Maven 3.0.3 (r1075438; 2011-02-28 10:31:09-0700)
Maven home: E:\development\cwh_build_tools\apache-maven-3.0.3
Java version: 1.6.0_20, vendor: Sun Microsystems Inc.
Java home: C:\Program Files\Java\jdk1.6.0_20\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows xp", version: "5.1", arch: "x86", family: "windows"
Reporter: Matt Walsh
remoteRepository only recognizes '<authentication username="username"
password="password"/>'.
I would expect it to recognize '<authentication username="username"/>' and then
read the password (based on the repository id) from my settings.xml.
Also doesn't recognize '<authentication username="username"
privateKey="${home}/.ssh/private_key_file"/>'. Still prompts for password.
Although, it will fail if the path specified does not exist.
If I leave out the authentication altogether, it prompts for my login password,
even if it is specified in my .m2/settings.xml file.
My ant build file looks like this (with the various authentication items I've
tried):
{code:xml}
<target name="mvn.init">
<artifact:remoteRepository id="releases"
url="scp://server/NEXUS/sonatype-work/nexus/storage/releases">
<authentication username="nexus"
privateKey="${user.home}/.ssh/id_dsa"/> OR
<authentication username="nexus"/> OR
<authentication username="nexus"
password="encryptedPassword"/> OR
<authentication username="nexus" password="password"/>
THIS IS THE ONLY ONE THAT WORKS
</artifact:remoteRepository>
<artifact:install-provider groupId="org.apache.maven.wagon"
artifactId="wagon-ssh"
version="1.0-beta-7">
</artifact:install-provider>
</target>
<target name="deploy.artifacts" depends="mvn.init,compile.all">
<echo>Deploying artifacts to Nexus:</echo>
<echo>- deploying ${artifact}</echo>
<artifact:pom id="mypom" groupId="${groupId}"
artifactId="${artifactId}" version="${version}" packaging="${type}"/>
<artifact:writepom pomRefId="mypom" file="mypom.xml"/> HAD TO DO
THIS BECAUSE IT USES A BOGUS finalName IF I JUST USE A REFID BELOW.
<artifact:deploy file="${file}">
<pom file="mypom.xml"/>
<remoteRepository refid="releases"/>
</artifact:deploy>
<!-- Remove dynamic pom -->
<delete file="mypom.xml"/>
</target>
{code}
And my settings.xml looks like this:
{code:xml}
<settings>
<servers>
<server>
<id>releases</id>
<username>username</username>
<password>password</password>
</server>
</servers>
</settings>
{code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira