我正在使用木偶,我想通过一个特定的用户通过cron作业来获取Git repos。我在我的~/.ssh目录中有一个私钥,我用这个exec将它添加到ssh代理中:
exec {
'add-ssh-key':
cwd => '/home/user/.ssh',
command => "bash -c 'eval $(ssh-agent) ssh-add rsa_key'",
path => '/usr/bin:/usr/sbin:/bin:/sbin',
provider => 'shell'
}根据该规定,代理已经启动,并将身份添加到代理中。然而,我无法拉动回购(cron作业也不能),因为我可能没有连接到正确的ssh-代理(当它拉要求一个密码)。
还有别的方法可以做到这一点吗?
谢谢
发布于 2014-11-07 13:06:51
您可以向用户的~/.ssh/config文件中添加一个节,以指示它在连接到git服务器时使用密钥。
Host my-git-server
Hostname git.example.net
User gituser
IdentityFile /home/user/.ssh/rsa_key让木偶确保私钥有适当的限制权限。
没有必要涉及ssh-agent。
https://stackoverflow.com/questions/26798461
复制相似问题