根据这里提到的官方教程,我正在为我的项目构建一个CI流
在我的流程中有一些要点:
jenkins-generated-ssh-key的ssh公钥。我已将其提交给GitLab ssh设置。文件内容:
pipeline {
agent { docker 'node:6' }
stages {
stage('Build') {
steps {
sh 'npm run test'
sh 'npm run build'
}
}
stage('Deploy') {
steps {
sshagent (credentials: ['jenkins-generated-ssh-key']) {
sh 'git push --tags'
}
}
}
}
}“构建”阶段包含git提交和标记步骤。所有推送标签的东西都准备好了。
每次在执行“部署”阶段时,执政者都会在推送git标签之前被杀死。
[Pipeline] sshagent
[ssh-agent] Using credentials fe (jenkins-generated-ssh-key)
[ssh-agent] Looking for ssh-agent implementation...
[ssh-agent] Exec ssh-agent (binary ssh-agent on a remote machine)
$ docker exec d2ba3af75c0e5826d3d00676ebba523117a541d9015ee77c74106862d2665025 env ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-dewb3KyPiizc/agent.130
SSH_AGENT_PID=134
$ docker exec d2ba3af75c0e5826d3d00676ebba523117a541d9015ee77c74106862d2665025 env SSH_AGENT_PID=134 SSH_AUTH_SOCK=/tmp/ssh-dewb3KyPiizc/agent.130 ssh-add /var/jenkins_home/workspace/achilles_master-GZG6BNOXJZHXAGELOPVE2O57MTLCFCSFEEMQVJOWKHCSAQDCMS4Q@tmp/private_key_838589255993535437.key
Identity added: /var/jenkins_home/workspace/achilles_master-GZG6BNOXJZHXAGELOPVE2O57MTLCFCSFEEMQVJOWKHCSAQDCMS4Q@tmp/private_key_838589255993535437.key (rsa w/o comment)
[ssh-agent] Started.
[Pipeline] {
[Pipeline] sh
$ docker exec d2ba3af75c0e5826d3d00676ebba523117a541d9015ee77c74106862d2665025 env SSH_AGENT_PID=134 SSH_AUTH_SOCK=/tmp/ssh-dewb3KyPiizc/agent.130 ssh-agent -k
unset SSH_AUTH_SOCK;
unset SSH_AGENT_PID;
echo Agent pid 134 killed;
[ssh-agent] Stopped.
[achilles_master-GZG6BNOXJZHXAGELOPVE2O57MTLCFCSFEEMQVJOWKHCSAQDCMS4Q] Running shell script
+ git push --tags
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.我已经尝试过多次调整Jenkinsfile文件,并且我发现如果这个步骤是'git push‘或'ssh -T git@git.xxx',它将不会得到ssh代理包装内部步骤。那我就被拒绝了。ssh代理在执行ssh连接之前总是会被杀死,但通常会包装其他步骤,这些步骤通常不需要ssh auth。
发布于 2019-11-28 13:16:42
主机密钥验证failed.fatal:无法从远程存储库读取。
要解决上述错误,我们需要手动ssh一次或使用此参数。
StrictHostKeyChecking=no
https://stackoverflow.com/questions/47968654
复制相似问题