ssh_askpass: exe c (/ app / jenkins-slave / workspace / foo@tmp/askpass_foo.sh): такого файла или каталога нет - PullRequest
0 голосов
/ 23 января 2020

В Jenkins у меня есть учетные данные с идентификатором, именем пользователя, парольной фразой и закрытым ключом.

В моем файле jenkinsfile я пытаюсь использовать агент * sh, например:

sshagent(['my_credential_id']) {
  // sh "git something"
}

Но это не работает, и я не знаю почему.

Вы знаете, как я могу отладить его?

[Pipeline] { ( [first step] )
[Pipeline] sshagent
[ssh-agent] Using credentials [my credential description]
[ssh-agent] Looking for ssh-agent implementation...
[ssh-agent]   Exec ssh-agent (binary ssh-agent on a remote machine)
$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-UZJIW23748/agent.23748
SSH_AGENT_PID=23750
$ ssh-add /app/jenkins-slave/workspace/[project]/[project]@tmp/private_key_[XXXXXXXXXXXXXX].key
ssh_askpass: exec(/app/jenkins-slave/workspace/[project]/[project]@tmp/askpass_[XXXXXXXXXXXXXX].sh): No such file or directory
[Pipeline] // sshagent
[Pipeline] End of Pipeline
ERROR: Failed to run ssh-add

1 Ответ

0 голосов
/ 13 февраля 2020

По моему опыту, что-то не так с вашим личным ключом.

Сохраните личный ключ в файл, например, privatekey.txt, и протестируйте его так:

$ ssh -o StrictHostKeyChecking=no -i privatekey.txt username@hostname.example.com
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...