我正在尝试在Azure中设置Jenkins CI服务器,从Bitbucket中提取项目并运行测试。 CI服务器正在运行Ubuntu 14.10。
我让服务器运行,我用ssh-keygen(没有密码)生成了ssh-key,并在部署密钥下添加了Bitbucket中的公钥。如果我通过控制台在SSH会话中输入ssh -T hg@bitbucket.org作为用户jenkins我得到:
ssh -T hg@bitbucket.org
authenticated via a deploy key
You can use git or hg to connect to Bitbucket. Shell access is disabled.
我也可以从Bitbucket克隆项目,因为SSH密钥在命令行中工作。但是,当我通过Jenkins控制面板(配置)添加新的构建时。我正在添加GIT凭据,如下所示:
Repository URL: git@bitbucket.org:name/project_name.git
Credentials: the private key in /var/lib/jenkins/.ssh/id_rsa
我得到的错误
Failed to connect to repository : Command "git ls-remote -h git@bitbucket.org:name/project_name.git HEAD" returned status code 128:
stdout:
stderr: Permission denied (publickey).
fatal: Could not read from remote repository.
在尝试构建时,我得到与上面相同的错误。有什么线索我在这里做错了吗?据我所知,Jenkins使用用户“jenkins”,除非另有说明,这是我在命令行中使用“通过部署密钥进行身份验证”时使用的用户。
感谢所有的答案 :)