Files
danbooru/lib/capistrano/tasks/symlink.rake

30 lines
1.3 KiB
Ruby

namespace :symlink do
desc "Link the local config files"
task :local_files do
on roles(:app) do
execute :ln, "-s", "#{deploy_to}/shared/config/danbooru_local_config.rb", "#{release_path}/config/danbooru_local_config.rb"
execute :ln, "-s", "#{deploy_to}/shared/config/database.yml", "#{release_path}/config/database.yml"
if test("[ -f #{deploy_to}/shared/config/newrelic.yml ]")
execute :ln, "-s", "#{deploy_to}/shared/config/newrelic.yml", "#{release_path}/config/newrelic.yml"
end
end
end
desc "Link the local directories"
task :directories do
on roles(:app) do
execute :rm, "-f", "#{release_path}/public/data"
execute :ln, "-s", "#{deploy_to}/shared/data", "#{release_path}/public/data"
execute :mkdir, "-p", "#{release_path}/public/cache"
execute :mkdir, "-p", "#{deploy_to}/shared/system/cache"
execute :touch, "#{deploy_to}/shared/system/cache/tags.json"
execute :ln, "-s", "#{deploy_to}/shared/system/cache/tags.json", "#{release_path}/public/cache/tags.json"
execute :touch, "#{deploy_to}/shared/system/cache/tags.json.gz"
execute :ln, "-s", "#{deploy_to}/shared/system/cache/tags.json.gz", "#{release_path}/public/cache/tags.json.gz"
end
end
end
after "deploy:symlink:shared", "symlink:local_files"
after "deploy:symlink:shared", "symlink:directories"