Как установить закрытый ключ ssh для hudson / jenkins для доступа к bitbucket?
Я пытаюсь настроить сервер Debian с Apache2 в качестве интерфейса для Tomcat 7 под управлением Jenkins, который работает , но я хочу, чтобы Дженкинс контролировал частный репозиторий Mercurial, размещенный в bitbucket, и я хотел бы использовать SSH. (Я пробовал с простым https, но до сих пор нет радости - здесь есть ответ на вопрос, так что рекомендует использовать ssh)
я развернул Дженкинса, используя возможность горячего развертывания Tomcat, сбросив Дженкинса .War-файл в веб-приложения. Я могу создать пара открытого и закрытого ключей на сервере и добавила мой открытый ключ в учетную запись bitbucket - но как заставить Дженкинса использовать мой закрытый ключ для аутентификации при доступе к частному репозиторию на bitbucket?
Я видел сообщение в блоге, которое использует apt-get для установки Hudson на Debian, который создает пользователя Hudson (чтобы я мог добавить закрытый ключ для этого пользователя), но установка его через Tomcat autodeploy не добавляет пользователя Jenkins. Если для Jenkins нет пользователя unix, могу ли я настроить который Дженкинс использовал бы при проверке подлинности?
1 ответов
если вы можете управлять командной строкой mercurial изнутри Jenkins, вы можете передать --ssh
команда, чтобы сообщить mercurial, какую команду ssh вызвать. Что-то вроде этого, вероятно, работает:
hg --ssh '/usr/bin/ssh -i /path/to/private/key' ...
в качестве альтернативы вы можете выяснить, какой пользователь Дженкинс работает как (это должно быть некоторые user) и поместите файл в~/.ssh
даже если это /root/.ssh/