как разрешить отклонение ключа ssh при развертывании 1-го приложения Rails3?

Я пытаюсь развернуть приложение Rails3 в первый раз на Dreamhost с помощью Git и Capistrano. Используя инструкции по настройке Dreamhost Capistrano. До последней ошибки:

Cap deploy:check => looks good.
Cap deploy:setup => looks good.

Однако Cap deploy:cold => терпит неудачу:

** [alvarez.dreamhost.com :: out] Permission denied (publickey).
** [alvarez.dreamhost.com :: out] fatal: The remote end hung up unexpectedly

Мой файл config/deploy.rb содержит, помимо прочих переменных,

ssh_options[:keys] = %w(/home/bubby/.ssh/id_rsa)        
set :chmod755, "app config db lib public vendor script script/* public/disp*"
set :use_sudo, false

Настройка открытого ключа завершена на домашнем ПК. (Ubuntu.) Работа с репозиторием GitHub.

Скопировали открытый ключ в каталог домена в соответствии с инструкциями DH.

Какие-либо предложения? Достижение предела возможностей помощи DH. Спасибо.


person Brian Piercy    schedule 19.02.2012    source источник
comment
Совершенно неожиданно: вы используете [email protected]:... в своем файле deploy.rb для URL-адреса репо?   -  person iltempo    schedule 19.02.2012
comment
правильный @iltempo! set :repository, [email protected]:‹user›/‹reponame›.git   -  person Brian Piercy    schedule 19.02.2012


Ответы (1)


Пожалуйста, установите URL-адрес репозитория в версию только для чтения:

set :repository, "https://github.com/bjpcjp/catalog.git"

В противном случае git пытается использовать ваш закрытый ключ ssh для аутентификации на GitHub. Это не удается на сервере, если вы не предпримете дополнительные действия.

person iltempo    schedule 19.02.2012
comment
Сделанный. Результаты: [bubby@ubuntu:~/‹url›] $ cap deploy:cold * выполнение deploy:cold' * executing deploy:update' ** транзакция: start * выполнение `deploy:update_code' выполнение локально: git ls-remote github.com:‹user›.‹reponame›.git master fatal: github.com:‹user›/‹reponame›.git/info/refs не найден : вы запускали git update-server-info на сервере? Git update-server-info выполняется на локальном компьютере; никаких изменений в результатах. - person Brian Piercy; 19.02.2012
comment
Сначала попробуйте снова выполнить cap deploy:setup. - person iltempo; 19.02.2012
comment
Кажется, все еще используется старый URL. Попробуйте удалить каталоги с вашего сервера и начать заново с помощью deploy:setup и deploy:cold. - person iltempo; 19.02.2012
comment
Готово. (FTP-проход на Dreamhost и очистка каталога. Выход на локальную машину.) cap deploy:setup => готово. cap deploy:cold => не дает того же результата (git ls-remote github.com:‹user›.‹reponame›.git master fatal: ‹same›/info/refs not found.) - person Brian Piercy; 19.02.2012