2015-04-24 2 views
2

Пересылка агента не работает для старого репо, но работает для других репозиториев/серверов. Я сотрудник репо на Github, так что я должен быть в состоянии развернуть:capistrano ssh agent forwarding - Permission denied (publickey)

bundle exec cap production deploy 

Однако, я получаю:

DEBUG [4639b372] Command: cd /home/deploy/apps/xxx/repo && (RBENV_ROOT=/usr/local/rbenv RBENV_VERSION=1.9.3-p286 GIT_ASKPASS=/bin/echo GIT_SSH=/tmp/xxx/git-ssh.sh /usr/bin/env git remote update) 
DEBUG [4639b372] Fetching origin 
DEBUG [4639b372] Permission denied (publickey). 
DEBUG [4639b372] fatal: The remote end hung up unexpectedly 
DEBUG [4639b372] error: Could not fetch origin 
cap aborted! 
Exception while executing as [email protected]: git exit status: 1 
git stdout: Fetching origin 
git stderr: Permission denied (publickey). 
fatal: The remote end hung up unexpectedly 
error: Could not fetch origin 
/Users/hector/.rvm/gems/ruby-2.1.2/gems/sshkit-1.7.1/lib/sshkit/runners/parallel.rb:16:in `rescue in block (2 levels) in execute' 
/Users/hector/.rvm/gems/ruby-2.1.2/gems/sshkit-1.7.1/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute' 
Tasks: TOP => git:create_release => git:update 
(See full trace by running task with --trace) 
The deploy has failed with an error: #<SSHKit::Runner::ExecuteError: Exception while executing as [email protected]: git exit status: 1 
git stdout: Fetching origin 
git stderr: Permission denied (publickey). 
fatal: The remote end hung up unexpectedly 
error: Could not fetch origin 

Это мой deploy.rb:

set :application, 'xxx' 
set :deploy_user, 'xxx' 

# setup repo details 
set :scm, :git 
set :repo_url, '[email protected]:xxx/xxx.git' 

# setup rvm. 
set :rbenv_type, :system 
set :rbenv_ruby, '1.9.3-p286' 
set :rbenv_prefix, "RBENV_ROOT=#{fetch(:rbenv_path)} RBENV_VERSION=#{fetch(:rbenv_ruby)} #{fetch(:rbenv_path)}/bin/rbenv exec" 
set :rbenv_map_bins, %w{rake gem bundle ruby rails} 

# how many old releases do we want to keep, not much 
set :keep_releases, 5 

# files we want symlinking to specific entries in shared 
set :linked_files, %w{config/database.yml config/xxx.yml config/yetting.yml} 

# dirs we want symlinking to shared 
set :linked_dirs, %w{bin log tmp/pids tmp/cache tmp/sockets vendor/bundle public/system} 

# what specs should be run before deployment is allowed to 
# continue, see lib/capistrano/tasks/run_tests.cap 
set :tests, [xxx] 

set(:config_files, %w(
    xxx.xxx 
)) 

set(:executable_config_files, %w(
    unicorn_init.sh 
)) 


namespace :deploy do 
    # make sure we're deploying what we think we're deploying 
    before :deploy, "deploy:check_revision" 
    before :deploy, "deploy:run_tests" 
    after 'deploy:symlink:shared', 'deploy:compile_assets_locally' 
    after :finishing, 'deploy:cleanup' 
    after 'deploy:cleanup', 'airbrake:notify' 

end 

Я использую capistrano 3.2.1 в Mac OS 10.10.1

Любая идея, почему я получаю отказ от разрешения (публиковать)?

Спасибо!

ответ

3

Проблема заключалась в том, что репо изменилось, и старое кэшированное репо пришлось удалить.

rm -rf repo 
Смежные вопросы