Хадсон / Дженкинс - как получить доступ к частному репозиторию git на BitBucket.com
Этот вопрос длинный и многогранный, поэтому я начну с краткого обзора, а затем подробно покажу все, что я пробовал, и мои вопросы о том, почему они не работают и что я делаю неправильно.
обзорЯ пытаюсь настроить Build Job на Hudson для исходного кода в частном репозитории на BitBucket. Есть много похожих вопросов о переполнении стека, но по разным причинам ни один из них не отвечает моим потребностям.
Я хотел бы получить доступ к нему с помощью https вместо ssh, но, похоже, нет никакого способа получить доступ к нему в Хадсоне с помощью https, и все в Интернете, кажется, продаются по ssh. Поэтому я попытался заставить его работать с ssh, но тщетно.
Итак, мой главный вопрос:
Как я могу получить доступ к частному хранилищу BitBucket в Гудзоне?
Я включил Дженкинса в заголовок и в качестве тега, потому что, скорее всего, любое решение будет применимо к обоим.В связи с тем, что я попал в несколько тупиков, я также задаю пару «подвопросов», в которых подробно рассматривается основной вопрос, приведенный выше - дополнительная благодарность, если вы можете мне их просветить.Проблема
Я использую плагин Git для Hudson и настраиваю его следующим образом:
Так как это частный репозиторий, он требует какой-то аутентификации. Так что, конечно, сборка не удалась. Вот соответствующие части трассировки стека:
ERROR: Error cloning remote repo 'origin'
hudson.plugins.git.GitException:
Could not clone https://[email protected]/OtherUser/projectname.git
Caused by: hudson.plugins.git.GitException:
org.eclipse.jgit.api.errors.TransportException:
https://[email protected]/OtherUser/projectname.git: not authorized
Вопрос: Почему плагину Git для Hudson не хватает места в конфигурации проекта для аутентификации для частных репозиториев? В конце концов, плагин SVN может иметь дело с аутентификацией. Есть ли веская причина?
Вещи, которые я пыталсяЯ перенастроил проект для использования URL-адреса ssh вместо URL-адреса https:
Затем я создал ключ SSH с помощьюэтот урок от Атлассиана. Затем я добавил ключ ssh в проект на BitBucket.
Я попытался построить снова, и получил эту трассировку стека (соответствующие части):
ERROR: Error cloning remote repo 'origin'
hudson.plugins.git.GitException:
Could not clone [email protected]:OtherUser/projectname.git
Caused by: hudson.plugins.git.GitException:
org.eclipse.jgit.api.errors.TransportException:
[email protected]:OtherUser/projectname.git:
UnknownHostKey: bitbucket.org. RSA key fingerprint is
97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40
Затем я решил, что должен попытаться настроить Hudson с помощью двух доступных плагинов ssh: плагина Publish Over SSH и плагина SSH (о котором я узналВот).
Но я не могу понять, как их использовать. Во-первых, я предполагаю, что мне не нужен плагин Publish Over SSH, потому что я не пытаюсь публиковать, я просто пытаюсь получить. Во-вторых, плагин SSH не будет работать для меня. Я пытался сделать это:
Но проблема в том, что он не может подключиться. Кроме того, он хочет номер порта, и если я ввожу ничего, 22 используется по умолчанию. Я понятия не имею, что с этим делать.
Вопрос: Нужно ли мне даже настраивать сайт SSH для успешного размещения из этого частного репозитория BitBucket?
РезюмеКак я могу получить доступ к частному хранилищу BitBucket в Гудзоне?
В моей сборке Hudson мне нужно иметь возможность извлекать из этого частного хранилища BitBucket. Кажется, я не могу заставить его работать с ssh, и я даже не знаю, возможно ли использование https, так как мне некуда ввести пароль. Если кто-то может помочь мне в любом случае, я буду счастлив.