2013-06-03 107 views
1

我有一个项目,我试图部署与capistrano。它是PHP,所以我们使用capifony。问题是源代码从未检出并保存到服务器。这是部署输出的一部分:Capistrano部署不能复制文件

executing locally: "git ls-remote [email protected]:repo/app-widget.git master" 
command finished in 3403ms 
* executing "git clone -q [email protected]:repo/app-widget.git /u/apps/app/releases/20130603130402 && cd /u/apps/app/releases/20130603130402 && git checkout -q -b deploy b86a5c027b1b2a245aa90e18ccd0211fa72e3466 && (echo b86a5c027b1b2a245aa90e18ccd0211fa72e3466 > /u/apps/app/releases/20130603130402/REVISION)" 
servers: ["1.2.3.4 "] 
[1.2.3.4 ] executing command 
command finished in 1820ms 
<snip> 
* executing "ln -nfs /u/apps/app/shared/application/commons/app/logs /u/apps/app/releases/20130603130402/application/commons/app/logs" 
servers: ["1.2.3.4 "] 
[1.2.3.4 ] executing command 
*** [err :: 1.2.3.4] ln: 
*** [err :: 1.2.3.4] failed to create symbolic link `/u/apps/app/releases/20130603130402/application/commons/app/logs' 
*** [err :: 1.2.3.4] : No such file or directory 

我检查了服务器,并且/ u/apps/app/releases中没有任何内容。我确保ubuntu用户(该作业在其下运行)拥有发行版目录。我还确保ubuntu用户可以访问回购并克隆代码。当我进入服务器的命令运行良好。我错过了什么?

这里是我的deploy.rb的相关部分:

set :ssh_options, { :forward_agent => false } 
set :use_sudo, false 
set :user, 'ubuntu' 
set :scm, :git 
set :repository, "[email protected]:repo/app-widget.git" 

set :branch, fetch(:version, `git tag`.split("\n").last) 
set :model_manager, "doctrine" 

set :keep_releases, 2 
#set :deploy_via, :remote_cache 

set :webserver_user, "www-data" 
set :permission_method, :acl 
set :use_set_permissions, false 
set :interactive_mode, true 
logger.level = Logger::MAX_LEVEL 

task :testing do 
    set :user, "ubuntu" 

    set :domain, "1.2.3.4" 

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

    set :env, "test" 
end 

回答

0

不知道这是你deploy.rb的非相关部分,但你需要设置deploy_to。如果没有指定deploy_to目录,我认为/ u/apps是默认值。