Мне действительно нужна твоя помощь.У меня есть приложение Ruby on Rails на моей локальной машине, репозиторий на GitHub и сервер Ubuntu, на котором размещается приложение с Nginx.
У меня много времени был репозиторий, и развертывание через capistrano работалопросто хорошо.Теперь я преобразовал свой репозиторий в частный, и развертывание просто не работает.Когда я пытаюсь развернуть его, я получаю следующую ошибку:
* executing `deploy'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
updating the cached checkout on all servers
executing locally: "git ls-remote git://github.com/GIT_USER/APPLICATION.git master"
fatal: The remote end hung up unexpectedly
*** [deploy:update_code] rolling back
* executing "rm -rf /var/www/APPLICATION/releases/DATE_OF_DEPLOY; true"
servers: ["DOMAIN"]
[DOMAIN] executing command
command finished in 424ms
Итак, я предполагаю, что аутентификация не работает, но работает.Я скопировал свой открытый ключ на GitHub и могу даже SSH там.Я могу SSH с сервера на GitHub, и он говорит, что я успешно аутентифицирован.Я даже вижу, какой ключ работает.Но «git ls-remote [...]» не работает, и я не получаю информации, запустив его с трассировкой, кроме информации, которую я уже получил.
Итак, моя главная проблема в том, что я не нетгде искать ошибку.Если вы знаете, как решить эту проблему или можете указать мне в любом направлении, что было бы неплохо.
И это основная часть моего deploy.rb:
$:.unshift(File.expand_path('./lib', ENV['rvm_path']))
require "rvm/capistrano"
require 'bundler/capistrano'
default_run_options[:pty] = true
set :user, "DEPLOY_USER"
set :domain, "DOMAIN"
set :application, "APPLICATION"
set :repository, "git@github.com:GIT_USER/APPLICATION.git"
set :deploy_to, "/var/www/#{application}"
set :deploy_via, :remote_cache
set :scm, :git
set :git_account, "GIT_USER"
set :branch, "master"
set :git_shallow_clone, 1
set :scm_verbose, true
set :use_sudo, false
set :rvm_bin_path, "/usr/local/rvm/bin"
set :rvm_ruby_string, '1.9.2'
set :rvm_type, :user # Don't use system-wide RVM
ssh_options[:port] = PORT_NUMBER
set :user, user
ssh_options[:keys] = %w(/home/DEPLOY_USER/.ssh/id_rsa)
set :ssh_options, { :forward_agent => true}
server domain, :app, :web
# Your HTTP server, Apache/etc
role :web, domain
# This may be the same as your `Web` server
role :app, domain
# This is where Rails migrations will run
role :db, domain, :primary => true
Извините, что эта вещьвыглядит так беспорядочно, но я попробовал тысячи подсказок, советов и учебных пособий.
Спасибо за любую помощь!
И, кстати: Да, все, что написано в Capslock, только для конфиденциальностипричины и, конечно же, не настоящие настройки, которые я использую.