Гудзонская ошибка git ssh - PullRequest
       10

Гудзонская ошибка git ssh

8 голосов
/ 19 августа 2010

Если есть кто-нибудь, кто может помочь мне понять, почему это git-репо не клонирует, это было бы удивительно.

Я запускаю ту же команду из терминала, она работает.Я надеюсь выяснить, где я могу поставить пароль, чтобы сервер мог аутентифицировать соединение.

Пожалуйста, и спасибо.

ERROR: Error cloning remote repo 'origin' : Could not clone ssh://build@kdmanalytics.net/usr/local/repository/kdm/git/TestCaseGenerator.git
ERROR: Cause: Error performing /usr/bin/git clone -o origin ssh://build@kdmanalytics.net/usr/local/repository/kdm/git/TestCaseGenerator.git /var/lib/hudson/jobs/KDM_Test_Case_Generator/workspace
Command returned status code 128: Initialized empty Git repository in /var/lib/hudson/jobs/KDM_Test_Case_Generator/workspace/.git/
No protocol specified

(ssh-askpass:12523): Gtk-WARNING **: cannot open display: :0.0
Host key verification failed.
fatal: The remote end hung up unexpectedly

Trying next repository
ERROR: Could not clone repository
FATAL: Could not clone
hudson.plugins.git.GitException: Could not clone
    at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:719)
    at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:658)
    at hudson.FilePath.act(FilePath.java:753)
    at hudson.FilePath.act(FilePath.java:735)
    at hudson.plugins.git.GitSCM.checkout(GitSCM.java:658)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1046)
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:479)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:411)
    at hudson.model.Run.run(Run.java:1248)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:129)

Ответы [ 4 ]

8 голосов
/ 19 августа 2010

Вы должны установить доверительные отношения ssh между вашим репозиторием и git-сервером.

Вам нужно сделать это только один раз.

Короче говоря, qs следует:

Войдите как пользователь, запустивший hudson

ssh-keygen

, используйте пустой пароль

Это создаст 2 файла в .ssh: id_dsa и id_dsa.pub.

cat .ssh/id_dsa.pub

Теперь скопируйте тарабарщину, представляющую открытый ключ.

ssh repo-server

Подтвердите, что хотите добавить ключ хоста в known_hosts.Войдите в систему, используя учетную запись для доступа к репо.

cat - >>.ssh/authorized_keys

(дважды проверьте, есть ли у вас 2> или рискуете гневом своих коллег) Затем вставьте скопированный трюк, который вы только что скопировали.

Журнали убедитесь, что теперь вы можете ssh без необходимости вводить пароль.

Это работает для хостов на основе Unix.Для github, gitosis, windows процесс аналогичен, но, конечно, другой.

Теперь Хадсон сможет подключиться.

0 голосов
/ 04 ноября 2011

Если все должно быть правильно, но, как ни странно, это не работает, убедитесь, что ваш проект собран на основе ведомого, который вы настроили.

0 голосов
/ 28 мая 2011

Вы должны проверить следующее:

  1. Вы используете ssh-ключи пользователя, который запускал демон hudson. Например, если user = hudson, вы должны войти в систему как hudson и сгенерировать ssh-ключи
  2. Вы загрузили свой открытый ключ на свой сервер (github, assemblybla) из правильного .ssh/id_rsa.pub файла, т.е. для того же пользователя, который запустил демон hudson
  3. Вы добавили отпечаток RSA вашего сервера в .ssh/known_hosts файл
0 голосов
/ 19 августа 2010

Должен ли этот URL быть:

ssh://build@kdmanalytics.net:/usr/local/repository/kdm/git/TestCaseGenerator.git

?

(Отсутствует двоеточие после ".net")

...