2013-06-25 2 views
0

У меня проблема с развертыванием приложения symfony2 на моем сервере с capifony. Я пытался потянуть git прямо на свой сервер, и это работает.Развертывание Symfony2 с Capifony

вот мой deploy.rb файл

# Sylius default deployment configuration. 

# Capifony documentation: http://capifony.org 
# Capistrano documentation: https://github.com/capistrano/capistrano/wiki 

# Be more verbose by uncommenting the following line 
# logger.level = Logger::MAX_LEVEL 

set :application, "myapp" 
set :domain,  "xx.xx.xx.xx" 
set :deploy_to, "/home/user" 
set :user,  "user" 

role :web,  domain 
role :app,  domain 
role :db,   domain, :primary => true 

set :scm,   :git 
set :repository, "[email protected]:/var/www/user/user.git" 
set :branch,  "master" 
set :deploy_via, :remote_cache 

ssh_options[:forward_agent] = true 

set :use_composer, true 
set :update_vendors, true 

set :dump_assetic_assets, true 

set :writable_dirs,  ["app/cache", "app/logs"] 
set :webserver_user, "www-data" 
set :permission_method, :acl 

set :shared_files, ["app/config/parameters.yml", "web/.htaccess", "web/robots.txt"] 
set :shared_children, ["app/logs"] 

set :model_manager, "doctrine" 

set :use_sudo, false 

set :keep_releases, 3 


before 'symfony:composer:update', 'symfony:copy_vendors' 

namespace :symfony do 
    desc "Copy vendors from previous release" 
    task :copy_vendors, :except => { :no_release => true } do 
    if Capistrano::CLI.ui.agree("Do you want to copy last release vendor dir then do composer install ?: (y/N)") 
     capifony_pretty_print "--> Copying vendors from previous release" 

     run "cp -a #{previous_release}/vendor #{latest_release}/" 
     capifony_puts_ok 
    end 
    end 
end 

after "deploy:update", "deploy:cleanup" 
after "deploy", "deploy:set_permissions" 

и вот моя ошибка

failed: "sh -c 'if [ -d /home/user/shared/cached-copy ]; then cd /home/user/shared/cached-copy && git fetch -q origin && git fetch --tags -q origin && git reset -q --hard f90495dc7d5c62d1bc61415b5c10b762a7e96ee6 && git clean -q -d -x -f; else git clone -q -b master [email protected]:/var/www/user/user.git /home/user/shared/cached-copy && cd /home/user/shared/cached-copy && git checkout -q -b deploy f90495dc7d5c62d1bc61415b5c10b762a7e96ee6; fi'" on xxx.xxx.xxx.xxx 

Я также попытался запустить это на моем сервере непосредственно через SSH и что хорошо работает.

Любая идея? thnx

+0

очередь на многословные ошибок и обеспечить более подробное сообщение об ошибке. ... sh, user-rights, git fetch, git reset, git clean, git clone, git checkout ... все возможные причины – nifr

+0

теперь я получил: ** [xxx.xx.xx.xx :: err ] Разрешение отклонено, повторите попытку. ** [xxx.xx.xx.xx :: err] Разрешение отклонено, повторите попытку. ** [xxx.xx.xx.xx :: err] Разрешение отклонено (публикация, пароль). ** [xxx.xx.xx.xx :: err] фатальный: удаленный конец неожиданно повесил –

+0

, у вас либо есть неправильный пароль, либо открытый ключ ... поэтому ваше развертывание не работает. – nifr

ответ

1

У вас пока нет пароля SSH. Либо поставить установку в вашем deploy.rb (не рекомендуется) или пусть capifony спросить вас за это:

#set :password, "password"    # the ssh password 
set(:password){ Capistrano::CLI.password_prompt("Type your SSH password for user \"#{user}\": ") } 

легче найти то, что вызывает развертывание на провал, если вы увеличиваете уровень журнала детальности с помощью параметра logger.level в вашем deploy.rb ,

# IMPORTANT = 0 
# INFO  = 1 
# DEBUG  = 2 
# TRACE  = 3 
# MAX_LEVEL = 3 
logger.level = Logger::MAX_LEVEL 

(documentation)

+0

Да, я сделал это, но теперь у меня есть это: ** [xxx.xx.xx.xx :: err] Разрешение отклонено, повторите попытку. ** [xxx.xx.xx.xx: : err] Разрешение отклонено, повторите попытку. ** [xxx.xx.xx.xx :: err] Разрешение отклонено (публикация, пароль). ** [xxx.xx.xx.xx :: err] фатальный: удаленный конец неожиданно повесил трубку –

+0

посмотрел мой комментарий к вашему вопросу. неправильный пароль/публикация ... дважды проверьте свои учетные данные! – nifr

+0

Хорошо, теперь у меня новая ошибка :) Команда git ls-remote [email protected]: /var/www/user/user.git HEAD возвратил код статуса 32768 –