我有一個文件夾上傳的資產(通過回形針)的寶石,它們存儲在不同的文件夾ckeditor_assets
。處理像回形針「系統」文件夾,共享鏈接的文件夾
我想用capistrano處理這個文件夾,就像處理回形針上傳文件夾system
一樣。
我該如何做到這一點?它將包含客戶數據,所以這很重要。
我有一個文件夾上傳的資產(通過回形針)的寶石,它們存儲在不同的文件夾ckeditor_assets
。處理像回形針「系統」文件夾,共享鏈接的文件夾
我想用capistrano處理這個文件夾,就像處理回形針上傳文件夾system
一樣。
我該如何做到這一點?它將包含客戶數據,所以這很重要。
我解決了這個問題:http://www.simonecarletti.com/blog/2009/02/capistrano-uploads-folder/
以供將來參考,我報告這基本上創建了Capistrano的shared
文件夾的目錄,每次它符號鏈接博客帖子的一部分。
# ==============================
# Uploads
# ==============================
namespace :uploads do
desc <<-EOD
Creates the upload folders unless they exist
and sets the proper upload permissions.
EOD
task :setup, :except => { :no_release => true } do
dirs = uploads_dirs.map { |d| File.join(shared_path, d) }
run "#{try_sudo} mkdir -p #{dirs.join(' ')} && #{try_sudo} chmod g+w #{dirs.join(' ')}"
end
desc <<-EOD
[internal] Creates the symlink to uploads shared folder
for the most recently deployed version.
EOD
task :symlink, :except => { :no_release => true } do
run "rm -rf #{release_path}/public/uploads"
run "ln -nfs #{shared_path}/uploads #{release_path}/public/uploads"
end
desc <<-EOD
[internal] Computes uploads directory paths
and registers them in Capistrano environment.
EOD
task :register_dirs do
set :uploads_dirs, %w(uploads uploads/partners)
set :shared_children, fetch(:shared_children) + fetch(:uploads_dirs)
end
after "deploy:finalize_update", "uploads:symlink"
on :start, "uploads:register_dirs"
end
請參閱多文檔支持和一些說明的博文。
我仍然試圖在ckeditor gem上設置不同的路徑,所以我可以直接將文件夾移動到「共享」... –