当我尝试让 jenkins 运行mvn -B release:prepare
时,它会变为push
更改为git,但失败并显示Host key verification failed.
这是一个本地git存储库。
此时, jenkins 以root
运行。已为root
创建了SSH密钥,并且已将它们正确添加到git用户的authorized_keys
。
事实上,我可以 ssh 到构建机器,su
到root
运行
git clone git@localhost:my-project.git
克隆成功,创建分支并成功将该分支推送到origin
。
另一个奇怪的事情是 jenkins 可以在mvn release:prepare
运行之前成功克隆存储库。
尝试push
时,会出现Host key verification failed.
错误。
我已经将构建简化为1执行步骤
git clone git@localhost:my-project.git
mvn -B release:prepare
在回复之前,请不要建议使用git插件或 maven发布插件。这些无法安装。
答案 0 :(得分:2)
想出来。
虽然{~1}}被添加到根〜/ .ssh / known_hosts文件中,但该框的实际IP却没有。将盒子的公共IP添加到known_hosts解决了这个问题。