You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Kris Nuttycombe <Kr...@noaa.gov> on 2005/01/19 20:26:50 UTC

Maven artifact:deploy and ssh-agent

Hi, all,

I'm having some trouble getting the new artifact deploy mode using 
maven.repo.list working using ssh-agent. Due to security restrictions 
I'm not allowed to put my passphrase into the build.properties file, and 
it appears that the deployment is failing as a consequence. I am 
specifying the relevant private key file. Under the legacy deploy mode, 
everything works fine.

Does anyone have any suggestions?

Here is my build.properties file:

# If I uncomment the following, the legacy deploy mode works fine
#maven.username=my_user
#maven.remote.group=maven
#maven.repo.central=my.remote.repo.com
#maven.repo.central.directory=/path/to/maven/repo

# The following results in the exception reported below
maven.repo.list = foobar
maven.repo.foobar = scp://my.remote.repo.com
maven.repo.foobar.username = my_user
maven.repo.foobar.privatekey=/home/my_user/.ssh/id_dsa
maven.repo.foobar.directory=/path/to/maven/repo
maven.repo.foobar.group = maven

--------------------------------------------------------------------------------------
Here's the exception:

jar:deploy-snapshot:
    [echo] maven.repo.list is set - using artifact deploy mode
Will deploy to 1 repository(ies): foobar
Deploying to repository: foobar
Using private key: /home/my_user/.ssh/id_dsa
java.lang.ArrayIndexOutOfBoundsException
    at java.lang.System.arraycopy(Native Method)
    at com.jcraft.jsch.Buffer.getByte(Unknown Source)
    at com.jcraft.jsch.Buffer.getMPIntBits(Unknown Source)
    at com.jcraft.jsch.Identity.decrypt_dss(Unknown Source)
    at com.jcraft.jsch.Identity.decrypt(Unknown Source)
    at com.jcraft.jsch.Identity.setPassphrase(Unknown Source)
    at com.jcraft.jsch.JSch.addIdentity(Unknown Source)
    at 
org.apache.maven.deploy.deployers.GenericSshDeployer.init(GenericSshDeployer.java:140)
    at 
org.apache.maven.deploy.deployers.ScpDeployer.init(ScpDeployer.java:103)
    at org.apache.maven.deploy.DeployTool.deploy(DeployTool.java:134)
    at 
org.apache.maven.artifact.deployer.DefaultArtifactDeployer.doDeploy(DefaultArtifactDeployer.java:390)
    at 
org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploySnapshot(DefaultArtifactDeployer.java:186)
    at 
org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploySnapshot(DefaultArtifactDeployer.java:183)
    at 
org.apache.maven.artifact.deployer.DeployBean.deploySnapshot(DeployBean.java:153)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at 
org.apache.commons.jelly.impl.DynamicBeanTag.doTag(DynamicBeanTag.java:230)
    at 
org.apache.commons.jelly.impl.StaticTagScript.run(StaticTagScript.java:145)
    at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
    at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
    at 
org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:87)
    at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
    at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
    at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
    at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:84)
    at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
    at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
    at org.apache.commons.jelly.impl.DynamicTag.doTag(DynamicTag.java:125)
    at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
    at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
    at 
org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:79)
    at 
org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:110)
    at com.werken.werkz.Goal.fire(Goal.java:639)
    at com.werken.werkz.Goal.attain(Goal.java:575)
    at 
org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:671)
    at org.apache.maven.MavenSession.attainGoals(MavenSession.java:263)
    at org.apache.maven.cli.App.doMain(App.java:488)
    at org.apache.maven.cli.App.main(App.java:1239)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.werken.forehead.Forehead.run(Forehead.java:551)
    at com.werken.forehead.Forehead.main(Forehead.java:581)

Thanks for your help,

Kris

-- 
=====================================================
Kris Nuttycombe
Associate Scientist
Geospatial Data Services Group
CIRES, National Geophysical Data Center/NOAA
(303) 497-6337
Kris.Nuttycombe@noaa.gov
=====================================================



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Maven artifact:deploy and ssh-agent

Posted by Brett Porter <br...@gmail.com>.
For now, you'll need to use the external protocol:

scpexe://my.remote.repo.com

Alternatively, you can help us implement either:
a) prompting for the passphrase
b) a java SSH agent
c) a way to communicate with ssh-agent and/or pageant

http://sourceforge.net/mailarchive/message.php?msg_id=8086834

HTH

Cheers,
Brett

On Wed, 19 Jan 2005 12:26:50 -0700, Kris Nuttycombe
<Kr...@noaa.gov> wrote:
> Hi, all,
> 
> I'm having some trouble getting the new artifact deploy mode using
> maven.repo.list working using ssh-agent. Due to security restrictions
> I'm not allowed to put my passphrase into the build.properties file, and
> it appears that the deployment is failing as a consequence. I am
> specifying the relevant private key file. Under the legacy deploy mode,
> everything works fine.
> 
> Does anyone have any suggestions?
> 
> Here is my build.properties file:
> 
> # If I uncomment the following, the legacy deploy mode works fine
> #maven.username=my_user
> #maven.remote.group=maven
> #maven.repo.central=my.remote.repo.com
> #maven.repo.central.directory=/path/to/maven/repo
> 
> # The following results in the exception reported below
> maven.repo.list = foobar
> maven.repo.foobar = scp://my.remote.repo.com
> maven.repo.foobar.username = my_user
> maven.repo.foobar.privatekey=/home/my_user/.ssh/id_dsa
> maven.repo.foobar.directory=/path/to/maven/repo
> maven.repo.foobar.group = maven
> 
> --------------------------------------------------------------------------------------
> Here's the exception:
> 
> jar:deploy-snapshot:
>     [echo] maven.repo.list is set - using artifact deploy mode
> Will deploy to 1 repository(ies): foobar
> Deploying to repository: foobar
> Using private key: /home/my_user/.ssh/id_dsa
> java.lang.ArrayIndexOutOfBoundsException
>     at java.lang.System.arraycopy(Native Method)
>     at com.jcraft.jsch.Buffer.getByte(Unknown Source)
>     at com.jcraft.jsch.Buffer.getMPIntBits(Unknown Source)
>     at com.jcraft.jsch.Identity.decrypt_dss(Unknown Source)
>     at com.jcraft.jsch.Identity.decrypt(Unknown Source)
>     at com.jcraft.jsch.Identity.setPassphrase(Unknown Source)
>     at com.jcraft.jsch.JSch.addIdentity(Unknown Source)
>     at
> org.apache.maven.deploy.deployers.GenericSshDeployer.init(GenericSshDeployer.java:140)
>     at
> org.apache.maven.deploy.deployers.ScpDeployer.init(ScpDeployer.java:103)
>     at org.apache.maven.deploy.DeployTool.deploy(DeployTool.java:134)
>     at
> org.apache.maven.artifact.deployer.DefaultArtifactDeployer.doDeploy(DefaultArtifactDeployer.java:390)
>     at
> org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploySnapshot(DefaultArtifactDeployer.java:186)
>     at
> org.apache.maven.artifact.deployer.DefaultArtifactDeployer.deploySnapshot(DefaultArtifactDeployer.java:183)
>     at
> org.apache.maven.artifact.deployer.DeployBean.deploySnapshot(DeployBean.java:153)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     at java.lang.reflect.Method.invoke(Method.java:585)
>     at
> org.apache.commons.jelly.impl.DynamicBeanTag.doTag(DynamicBeanTag.java:230)
>     at
> org.apache.commons.jelly.impl.StaticTagScript.run(StaticTagScript.java:145)
>     at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
>     at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
>     at
> org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:87)
>     at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
>     at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
>     at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
>     at org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:84)
>     at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
>     at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
>     at org.apache.commons.jelly.impl.DynamicTag.doTag(DynamicTag.java:125)
>     at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
>     at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
>     at
> org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:79)
>     at
> org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:110)
>     at com.werken.werkz.Goal.fire(Goal.java:639)
>     at com.werken.werkz.Goal.attain(Goal.java:575)
>     at
> org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:671)
>     at org.apache.maven.MavenSession.attainGoals(MavenSession.java:263)
>     at org.apache.maven.cli.App.doMain(App.java:488)
>     at org.apache.maven.cli.App.main(App.java:1239)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     at java.lang.reflect.Method.invoke(Method.java:585)
>     at com.werken.forehead.Forehead.run(Forehead.java:551)
>     at com.werken.forehead.Forehead.main(Forehead.java:581)
> 
> Thanks for your help,
> 
> Kris
> 
> --
> =====================================================
> Kris Nuttycombe
> Associate Scientist
> Geospatial Data Services Group
> CIRES, National Geophysical Data Center/NOAA
> (303) 497-6337
> Kris.Nuttycombe@noaa.gov
> =====================================================
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org