Субмодуль heroku + git нуждается в аутентификации

Мы используем gitolite для управления нашими репозиториями, а в одном из наших проектов heroku есть подмодули git. Есть ли способ получить открытый ключ Heroku для аутентификации?

Спасибо, Дэвид


person seriakillaz    schedule 22.02.2012    source источник
comment
Разве кто-нибудь, использующий Heroku, не сможет вытащить этот подмодуль? Кроме того, стоит проверить, есть ли у Heroku открытый/закрытый ключ во время компиляции слагов.   -  person kanzure    schedule 11.04.2012


Ответы (3)


Нет, наверное, нет. Вместо этого вы можете использовать обычную аутентификацию HTTPS при создании подмодуля в своем репозитории git, аналогично развертыванию частных драгоценных камней в Heroku. Выглядит примерно так:

git submodule add https://username:[email protected]/username/repo.git
person kanzure    schedule 11.04.2012
comment
github представил для этого новую функцию: github.com/blog/ - person kanzure; 26.09.2012
comment
Я попробовал это сегодня и получил это: fatal: I don't handle protocol 'git clone https' - person Seth Malaki; 17.01.2013
comment
Что именно вы напечатали? - person kanzure; 08.02.2013
comment
папка submodule в каталоге .git изменена с .git/submodules на .git/modules в версии 1.8.4. Я думаю, что это нарушает процедуру развертывания Heroku. - person iGbanam; 15.10.2013
comment
@Yasky, Heroku исправил это? - person kanzure; 17.09.2014

Вы также можете зафиксировать каталог .ssh, содержащий выделенный ключ id_rsa («ключ развертывания»), который зарегистрирован в github либо с вашей учетной записью, либо с выделенной учетной записью развертывания. Не забудьте chmod 0660 ключ.

person Leonhardt Wille    schedule 12.09.2012
comment
Куда должна идти папка .ssh? - person acjay; 09.04.2013
comment
Теперь есть лучшее решение с использованием пакета сборки: github.com/timshadel/heroku-buildpack-github -netrc - person Leonhardt Wille; 06.04.2014

Существует еще одно решение для подхода @kanzure: https://stackoverflow.com/a/29464430/990356

Перейдите в раздел Настройки > Токены личного доступа и создайте токен личного доступа с включенной областью действия repo.

Теперь можно сделать git clone https://[email protected]/user-or-org/repo и в случае подмодуля git submodule add https://[email protected]/user-or-org/repo

Плюсы:

  • очень простой подход
  • токен можно легко отозвать
  • ваш настоящий пароль в безопасности

Минусы:

  • если у кого-то есть доступ к токену, он может получить доступ к вашим репозиториям GitHub (чтение и запись)
person tanguy_k    schedule 21.12.2016