Подтвердить что ты не робот

HowTo: Teamcity + GitHub

Кто-нибудь успешно настроил Teamcity для мониторинга, извлечения и сборки из GitHub?

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

ИЗМЕНИТЬ

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

4b9b3361

Ответ 1

Хорошо... Я получил это, чтобы начать работать на моем сервере Windows. Вот шаги, которые я предпринял для настройки TeamCity 4.5 Professional:

  • Загружено JetBrains Git Плагин VCS
  • Скопировал загруженный zip файл в .BuildServer\plugins
  • В меню "Администрирование" > "Редактировать конфигурацию сборки" > "Редактировать конфигурацию VCS Root" я выбрал "Git (JetBrains)"
  • Введенный мой клон-клоун с страницы проекта GitHub
  • Установить для метода проверки подлинности "Частный ключ по умолчанию" - это ВАЖНО
    • TeamCity BuildAgent должен работать как стандартный пользователь, при этом настройка SSH настроена для этого пользователя.
    • Следуйте инструкциям GitHub SSH для конфигурации SSH
  • Оставьте имя пользователя пустым. Это уже должно быть указано в вашем URL-адресе GitHub clone

Ответ 2

Я получил "Частный ключ по умолчанию" для работы с агентами, запущенными как пользователь SYSTEM в Windows. Для меня ответ имел файл идентификации в

C:\Windows\SysWOW64\config\systemprofile\.ssh\id_rsa

вместо

C:\Windows\System32\config\systemprofile\.ssh\id_rsa

Ответ 3

Ваш вопрос специфичен для SSH, но, безусловно, проще и быстрее использовать HTTP через TLS, так как GitHub и TeamCity теперь поддерживают HTTP-аутентификацию. Кроме того, GitHub также поддерживает личные айки-токены с ограниченными разрешениями, которые вы можете настроить по своему усмотрению или создать нового пользователя, если хотите.

См. изображение ниже наших настроек TeamCity.

Teamcity configuration

Ответ 5

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

Ответ 6

Вам может понадобиться сторонний плагин, например this

Ответ 7

(Это актуальный ответ на старый вопрос)

Я получил сборки на основе ssh, работающие с github/gitlab и teamcity 7 следующим образом:

Войдите в машину teamcity и используйте puttygen/ssh-keygen для генерации пары ключей rsa и сохраните ключ openssh где-нибудь разумным. (Gotcha - Использование puttygen? Убедитесь, что закрытый ключ находится в формате openssh - puttygen > conversion > export openssh)

Я предлагаю вам сохранить закрытый ключ в

C:\.ssh\id_rsa

Теперь настройте "закрытый ключ по умолчанию" в teamcity - создайте файл

C:\.ssh\config

И в этом место это:

Host * IdentityFile c:\.ssh\id_rsa

Войдите в свою учетную запись gitlab/guthub и вставьте открытый ключ openssh для личного ключа teamcity.

Теперь вы можете создать git vcs root в teamcity, который может использовать закрытый ключ по умолчанию, чтобы вытащить ваш источник.

Ответ 8

Я не знаю, почему, но выбор Default Private Key мне не помог.

Затем я выбираю Custom Private Key как снимок экрана ниже: введите описание изображения здесь

Поле Username должно быть пустым.

Поле Passphrase - это пароль вашего закрытого ключа

(Предположим, вы уже добавили открытый ключ этого закрытого ключа в git.)

Надеюсь, никто не застрял, как я!