如何在Jenkins中设置SVN凭据?
有没有办法设置Jenkins在执行SVN提交时使用的凭据? 我找不到办法。
如果我在我的机器上运行Jenkins服务器,它已经安装了SVN客户端,并且我的凭据被caching,似乎工作正常,但是如果我尝试在另一台机器上运行Jenkins服务器,那么出现错误。
ERROR: Failed to tag org.tmatesoft.svn.core.SVNCancelException: svn: No credential to try. Authentication failed
如果你去Jenkins要求存储库的作业configuration窗口, 如果您在放入回购站后等待一秒钟,它会尝试连接,如果它无法连接,则会在存储库位置下面显示红色文本[如下所示]; 点击提供的链接,您可以提供一个密钥和任何其他方式,你想authentication。 它会尝试连接,如果成功,你的构build应该连接好。
如果你不能得到红色的提示,那么为其他机器设置身份validation的URL将在这里通过jenkins。
如果它仍然不起作用,您可以手动input您的凭据。
在“存储库URL”文本框旁边,单击问号。 在该框中将是以下文本:“单击此链接并指定不同的凭据”。 点击该链接打开Subversionauthentication页面。 在该页面上input存储库URL的根目录,input要使用的login名和密码,然后单击确定。
我们使用svn+ssh
作为我们的身份validation机制,在我们的情况下,您必须确保您的slave拥有不需要手动input密码(即使用ssh-keygen
生成密钥)的ssh访问权限。
如果您只需通过执行ssh username@server
就可以进入ssh username@server
,那么Jenkins在执行提交时不会有问题。
您可以在Jenkins服务器命令行(在主服务器或从服务器上)执行结帐操作,然后input用户名并将其传递到服务器,永久接受SSL证书,然后在作业configuration中不需要SVN命令凭据。