我的最终目标是让Selenium在Jenkins内部运行.我的Jenkins安装在Ubuntu虚拟机中运行.
在jenkins selenium设置的一些问题(源自jenkins运行的用户的权限)之后,我切换到从命令行运行命令以查看发生了什么.我的目标是让测试在这里运行,然后让它在Jenkins中运行.
这是我正在使用和看到的命令和响应.
resn@resn-VirtualBox:~$ sudo java -jar /var/lib/jenkins/tools/selenium/selenium-server.jar -htmlSuite *firefox http://google.com "/var/lib/jenkins/jobs/Selenium setup test/workspace/tests/test-testsuite.html" "/var/lib/jenkins/jobs/Selenium setup test/workspace/results/results.html" -log=/tmp/selenium.log -debug=true -firefoxProfileTemplate "/home/resn/.mozilla/firefox/6f2um01h.Selenium"
23/08/2011 11:19:51 AM org.openqa.grid.selenium.GridLauncher main
INFO: Launching a standalone server
11:19:52.172 INFO - Java: Sun Microsystems Inc. 19.0-b09
11:19:52.173 INFO - OS: Linux 2.6.35-28-generic i386
11:19:52.223 INFO - v2.4.0, with Core v2.4.0. Built from revision 13337
11:19:52.488 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
11:19:52.491 INFO - Version Jetty/5.1.x
11:19:52.491 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver]
11:19:52.501 INFO - …Run Code Online (Sandbox Code Playgroud) 好的,所以我让Hudson(v1.393)在Ubuntu VM中运行,一切正常.但是,我正在尝试将一个Mac奴隶添加到Ubuntu主服务器,我遇到了一些问题.
我已经设置了SSH密钥,因此从命令行,Ubuntu VM可以使用密钥ssh到Mac上的一个名为hudson的用户.
在哈德森从配置,我选择了"通过ssh在Unix机器上启动从代理"并输入主机IP,在从用户和我的私人密钥文件的主服务器上的位置(这已被添加到用户名奴隶上的授权密钥文件).
但是,主站无法连接到从站.查看日志(下面),它正在尝试使用密码进行身份验证.
这是基于密钥的SSH尝试失败的后退吗?
Hudson是否只尝试使用密码进行身份验证,我需要更改其他内容以使其使用配置中定义的密钥文件?
是不是可以通过mac上的ssh启动slave代理?(我知道这种类型的奴隶启动方法明确表示Unix的名称,但我正在考虑(阅读:希望)它也适用于OS X)
日志
[01/14/11 10:38:07] [SSH] Opening SSH connection to 10.0.1.188:22.
[01/14/11 10:38:07] [SSH] Authenticating as hudson/******.
java.io.IOException: Password authentication failed.
at com.trilead.ssh2.auth.AuthenticationManager.authenticatePassword(AuthenticationManager.java:319)
at com.trilead.ssh2.Connection.authenticateWithPassword(Connection.java:314)
at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:565)
at hudson.plugins.sshslaves.SSHLauncher.launch(SSHLauncher.java:179)
at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:184)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
Caused by: java.io.IOException: Authentication method password not supported by the server at this stage.
at com.trilead.ssh2.auth.AuthenticationManager.authenticatePassword(AuthenticationManager.java:289)
... 9 more
[01/14/11 10:38:07] [SSH] Connection closed.
Run Code Online (Sandbox Code Playgroud)
如果有人设法征服过这种类型的设置,或者有任何提示或想法,我将非常感激!谢谢
我希望将 git 存储库存档到客户端的常规文件服务器。
以前我曾经git bundle create [path] --all
这样做过,而且效果很好。
但是,此存储库使用 Git LFS,并且 LFS 文件不包含在使用上述命令创建的包中。