2013-03-13 45 views
2

我已將config/database.yml添加到我的.gitignore文件中。並已將此添加到deploy.rb文件用capistrano部署database.yml時出錯

namespace(:customs) do 
    task :symlink_db, :roles => :app do 
    run "cp #{shared_path}/config/database.yml #{release_path}/config/database.yml" 
    end 
end 
after "deploy:update_code", "customs:symlink_db" 

但現在我運行cap deploy。我得到的錯誤

No such file or directory - /var/www/XXXX/releases/20130313100825/config/database.yml

如何解決呢?

注意:在此之前已經有一個版本。我對應用進行了一些更改並再次部署。

感謝

+0

儘管出現錯誤,但您並未鏈接該文件,而是正在複製該文件。也許你想改變這一點。 – aromero 2013-03-13 18:39:16

回答

2

你想用一個符號,因爲它不會關心,如果源文件是還沒有。

task :symlink_db_yml do 
    run "ln -s #{shared_path}/config/database.yml #{release_path}/config/database.yml" 
end 

而你要束之前執行它:安裝,如在部署不會創建新的應用程序目錄:update_code階段。

​​