Saz*_*zad 6 git ssh ruby-on-rails github jenkins
我想在jenkins服务器上设置git私有repo.我已经安装了git插件和github.当我在jenkins项目中设置repo url时,错误是
Failed to connect to repository : Command "git -c core.askpass=true
ls-remote -h git@github.com:repo/project.git HEAD" returned
status code 128:
stdout:
stderr: Permission denied (publickey).
fatal: The remote end hung up unexpectedl
Run Code Online (Sandbox Code Playgroud)
我到目前为止做了什么:
我的服务器用户和jenkin用户(两者都在同一台服务器上)是不同的.虽然在我看来这些并不相关.詹金斯用户被赋予所有信誉.
在我的服务器下var/lib/jenkins/.ssh(.ssh由我创建)我添加了ssh密钥.公钥被添加到github仓库.
通过将用户切换到jenkins,我可以通过此ssh克隆项目.所以我认为没有任何公钥添加问题.
我用谷歌搜索了这个问题.有很多解决方案.我尝试了大部分.但仍然没有解决方案.可能我错过了一些东西.
我的repo url就是这样的git@github.com:repo/project.git
如果您HOME设置了,/var/lib/jenkins/那么我希望您已成功完成所有步骤:)
那么您的情况可能会发生一件事。就像当您使用以下命令切换用户时:
su jenkins
Run Code Online (Sandbox Code Playgroud)
该命令意味着您切换用户,但主目录将与 root 的主目录相同!
因此,您需要通过确认特定用户主页也已切换来切换用户。为此,您需要遵循:
su -s /bin/bash jenkins
Run Code Online (Sandbox Code Playgroud)
然后您需要再次生成 ssh 公钥或仅更新已知主机。这会起作用。
| 归档时间: |
|
| 查看次数: |
285 次 |
| 最近记录: |