[Update2] Так нормально ли, что когда я запускаю git из CLI, он запрашивает пароль? Я могу получить доступ к серверам github с помощью парольной фразы для закрытого ключа ssh, но меня никогда не просят об этом в Jenkins и не просят предоставить его. [/Обновление2]
[Обновление] да. Я запускаю это на экземпляре Ubuntu на EC2. Я сгенерировал ключи ssh в /var/lib/jenkins/.ssh, который является пользователем, созданным Дженкинсом. Я установил параметр безопасности в Jenkins для использования пользователей/групп Unix. [/Update]
Я пытаюсь получить Дженкинса из git (github ). Я получаю следующую ошибку:
hudson.plugins.git.GitException: Could not clone [my personal repo]
at hudson.plugins.git.GitAPI.clone(GitAPI.java:245)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1121)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1063)
at hudson.FilePath.act(FilePath.java:832)
at hudson.FilePath.act(FilePath.java:814)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1063)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1218)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:581)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:470)
at hudson.model.Run.run(Run.java:1434)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:239)
Caused by: hudson.plugins.git.GitException: Command "git clone --progress -o origin git@github.com:bobbylo/Verbify.git /var/lib/jenkins/.jenkins/jobs/build_dev/workspace" returned status code 128:
stdout: Initialized empty Git repository in /var/lib/jenkins/.jenkins/jobs/build_dev/workspace/.git/
stderr: Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Я уже прошел руководство Github по ssh. Я сгенерировал закрытый ключ на экземпляре EC2. Поместил его в каталог.ssh пользователя jenkins. Поместил публичный ключ на Github (попробовал оба Deploy Key + обычный SSH Key ). Я проверил, что могу выполнять git поверх --проводных операций (вытягивания, клонирования и т. д. )и что он работает из интерфейса командной строки с пользователем. Я правильно установил разрешения пользователя/группы unix для пользователя (. Фактически, когда я меняю его, я вижу изменение журнала ошибок в журнале консоли Jenkin ). Когда я пытаюсь использовать плагин Jenkin git или выполнить команду оболочки Jenkins, я получаю указанную выше ошибку.
Я читал об агенте ssh -и добавлении ssh -и о том, как вы можете связать его со сценарием запуска вашей оболочки, чтобы вам не нужно было вводить пароль для каждой команды --Я не уверен если это здесь уместно.
В противном случае я не уверен, что еще я могу попробовать. Любые советы будут полезны!