Hudson“执行 Maven 发布”在不同端口上提交 svn+ssh 失败
我们在非标准端口上设置了 svn+ssh。
当 Hudson 要求我们时,我们在 Hudson 中添加了 svn+ssh 凭证。普通构建进展顺利,没有任何问题:
Started by user anonymous
Checking out svn+ssh://xxx:22222/usr/local/svn_repo/repo/project/trunk
A pom.xml
U .
At revision 485
但是,当我们尝试“执行 Maven 发布”(M2 发布插件)时,Hudson 在提交发布更改之前失败:
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Unable to commit files
Provider message:
The svn command failed.
Command output:
ssh: xxx:22222: Name or service not known
svn: Commit failed (details follow):
svn: Connection closed unexpectedly
[INFO] ------------------------------------------------------------------------
[DEBUG] Trace
org.apache.maven.BuildFailureException: Unable to commit files
Provider message:
The svn command failed.
Command output:
ssh: xxx:22222: Name or service not known
svn: Commit failed (details follow):
svn: Connection closed unexpectedly
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:715)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:284)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.lifecycle.LifecycleExecutorInterceptor.execute(LifecycleExecutorInterceptor.java:65)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
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:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at hudson.maven.agent.Main.launch(Main.java:165)
at hudson.maven.MavenBuilder.call(MavenBuilder.java:165)
at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:750)
at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:694)
at hudson.remoting.UserRequest.perform(UserRequest.java:114)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:270)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.maven.plugin.MojoFailureException: Unable to commit files
Provider message:
The svn command failed.
Command output:
ssh: xxx:22222: Name or service not known
svn: Commit failed (details follow):
svn: Connection closed unexpectedly
at org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:190)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
at hudson.maven.agent.PluginManagerInterceptor.executeMojo(PluginManagerInterceptor.java:182)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
... 28 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12 seconds
[INFO] Finished at: Wed Nov 24 14:41:20 CET 2010
[INFO] Final Memory: 11M/155M
[INFO] ------------------------------------------------------------------------
channel stopped
Finished: FAILURE
当我尝试列出时,我有相同的“名称或服务未知”来自机器的东西:
mah@hudson:~$ svn list svn+ssh://xxx:22222/usr/local/svn_repo/repo/project/trunk
ssh: xxx:22222: Name or service not known
svn: Connection closed unexpectedly
为了使其工作,我需要修改 subversion 配置中的隧道部分。但为什么我不能与 Hudson 一起执行发布?
We have svn+ssh setup on non-standard port.
We added svn+ssh credential in Hudson, when it asked us. Ordinary build goes fine, without any problems:
Started by user anonymous
Checking out svn+ssh://xxx:22222/usr/local/svn_repo/repo/project/trunk
A pom.xml
U .
At revision 485
However, when we try to "Perform Maven Release" (M2 Release Plugin), Hudson fails just before committing release changes:
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Unable to commit files
Provider message:
The svn command failed.
Command output:
ssh: xxx:22222: Name or service not known
svn: Commit failed (details follow):
svn: Connection closed unexpectedly
[INFO] ------------------------------------------------------------------------
[DEBUG] Trace
org.apache.maven.BuildFailureException: Unable to commit files
Provider message:
The svn command failed.
Command output:
ssh: xxx:22222: Name or service not known
svn: Commit failed (details follow):
svn: Connection closed unexpectedly
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:715)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:569)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:539)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:284)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.lifecycle.LifecycleExecutorInterceptor.execute(LifecycleExecutorInterceptor.java:65)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
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:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at hudson.maven.agent.Main.launch(Main.java:165)
at hudson.maven.MavenBuilder.call(MavenBuilder.java:165)
at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:750)
at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:694)
at hudson.remoting.UserRequest.perform(UserRequest.java:114)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:270)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.maven.plugin.MojoFailureException: Unable to commit files
Provider message:
The svn command failed.
Command output:
ssh: xxx:22222: Name or service not known
svn: Commit failed (details follow):
svn: Connection closed unexpectedly
at org.apache.maven.plugins.release.PrepareReleaseMojo.execute(PrepareReleaseMojo.java:190)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:490)
at hudson.maven.agent.PluginManagerInterceptor.executeMojo(PluginManagerInterceptor.java:182)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
... 28 more
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12 seconds
[INFO] Finished at: Wed Nov 24 14:41:20 CET 2010
[INFO] Final Memory: 11M/155M
[INFO] ------------------------------------------------------------------------
channel stopped
Finished: FAILURE
I have the same "Name or service not known", when I try listing something from the machine:
mah@hudson:~$ svn list svn+ssh://xxx:22222/usr/local/svn_repo/repo/project/trunk
ssh: xxx:22222: Name or service not known
svn: Connection closed unexpectedly
In order for this to work, I would need to modify tunnel section in subversion config. But why I cannot perform a release with Hudson?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这似乎是一个标准的 SVN 问题 (1942)。
它还指出有一个补丁。我不知道该补丁是否可以合并到 Hudson 中,但您可以打开 Bug/功能请求。
标准且可能是最简单的解决方法是定义主机别名 。
It seems to be a standard SVN Issue (1942).
It also states that there is a patch for it. I don't know if the patch could be incorporated into Hudson, but you can open an Bug/Feature Request.
Standard, and probably easiest, workaround is to define an host alias.