2013-06-03 106 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是默認值。