Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Svn 如何向jenkins授予正确的权限?_Svn_Jenkins - Fatal编程技术网

Svn 如何向jenkins授予正确的权限?

Svn 如何向jenkins授予正确的权限?,svn,jenkins,Svn,Jenkins,我在ubuntu服务器上安装了Jenkins。Jenkins在tomcat6下,所有文件都属于用户和组tomcat6 当我要求jenkins在构建作业之前使用svn更新目录时,它似乎存在正确的访问问题。我尝试上载的目录属于包含用户tomcat6的www数据组。我在上面设置了权限775,得到下面的错误。如果我将权限设置为777,它就可以正常工作 我如何知道jenkins使用哪个用户来进行svn更新,并赋予它正确的权限,因为它似乎不是tomcat6 ERROR: Failed to update s

我在ubuntu服务器上安装了Jenkins。Jenkins在tomcat6下,所有文件都属于用户和组tomcat6

当我要求jenkins在构建作业之前使用svn更新目录时,它似乎存在正确的访问问题。我尝试上载的目录属于包含用户tomcat6的www数据组。我在上面设置了权限775,得到下面的错误。如果我将权限设置为777,它就可以正常工作

我如何知道jenkins使用哪个用户来进行svn更新,并赋予它正确的权限,因为它似乎不是tomcat6

ERROR: Failed to update svn+ssh://myserver/myrepository
org.tmatesoft.svn.core.SVNException: svn: E200030: READONLY

最后,我发现了问题所在。 项目文件将由用户tomcat6拥有,以允许jenkins更新其上的文件。似乎仅仅属于拥有这些文件的组是不够的,即使拥有775个权限。
因此,一个简单的
sudo chown-R tomcat6:mygroup myproject
解决了更新问题

您是否给了Jenkins一个SSH私钥用于SSH+svn?该映射到服务器上的哪个用户?您还可以在/var/log/security中看到svn登录。感谢您的快速回复。是的,我确实向Jenkins添加了以前生成的SSH密钥。这个密钥的用户是我,我刚刚尝试将它添加到www数据组,但仍然不起作用。我没有/var/log下的文件夹安全性,也没有在其中看到任何svn文件夹,有办法在其他地方找到它吗?我的错误:看起来你想要的是/var/log中的auth.log文件。您应该看到“1.2.3.4中tomcat6的已接受公钥”或类似内容。(我输入了-我的意思是“查看svn登录”而不是svn日志)我在auth.log中得到了以下内容,但没有提到tomcat6
apr15 14:35:24 paris sshd[18445]:从192.168.1.200端口44746 ssh2 apr15 14:35:24 paris sshd[18445]:pam_unix(sshd:session):在(uid=0)apr15 14:35:24 paris svnserve为userme打开的会话:DIGEST-MD5 common mech free
确定,这是假设SSH密钥已附加到用户tomcat6。它看起来像是作为
userme
进行身份验证。你知道为什么它不能使用
775
权限吗?这真的很奇怪,我也有完全相同的问题。我为我的文件夹提供了一个jenkin用户的访问权限,它开始运行sudo chown-R jenkins MyFolder/