diff --git a/config/deploy.rb b/config/deploy.rb index e70a241d0..b4aec7f0b 100644 --- a/config/deploy.rb +++ b/config/deploy.rb @@ -21,6 +21,25 @@ set :deploy_to, "/var/www/#{application}" default_run_options[:pty] = true +namespace :local_config do + desc "Create the shared config directory" + task :setup_shared_directory do + run "mkdir -p #{deploy_to}/shared/config" + end + + desc "Initialize local config files" + task :setup_local_files do + run "cp #{current_path}/script/install/danbooru_local_config.rb.templ #{deploy_to}/shared/config/danbooru_local_config.rb" + run "cp #{current_path}/script/install/database.yml.templ #{deploy_to}/shared/config/database.yml" + end + + desc "Link the local config files" + task :link_local_files do + run "ln -s #{deploy_to}/shared/config/danbooru_local_config.rb #{current_path}/config/danbooru_local_config.rb" + run "ln -s #{deploy_to}/shared/config/database.yml #{current_path}/config/database.yml" + end +end + desc "Change ownership of common directory to user" task :reset_ownership_of_common_directory do sudo "chown -R #{user}:#{user} /var/www/danbooru" @@ -50,7 +69,7 @@ namespace :delayed_job do task :stop, :roles => :app do run "cd #{current_path}; script/delayed_job stop #{rails_env}" end - + desc "Restart delayed_job process" task :restart, :roles => :app do run "cd #{current_path}; script/delayed_job restart #{rails_env}" @@ -58,6 +77,9 @@ namespace :delayed_job do end after "deploy:setup", "reset_ownership_of_common_directory" +after "deploy:setup", "local_config:setup_shared_directory" +after "deploy:setup", "local_config:setup_local_files" +after "deploy:update_code", "local_config:link_local_files" after "deploy:start", "delayed_job:start" after "deploy:stop", "delayed_job:stop" after "deploy:restart", "delayed_job:restart" diff --git a/script/install/danbooru_local_config.rb.templ b/script/install/danbooru_local_config.rb.templ new file mode 100644 index 000000000..64bc3dced --- /dev/null +++ b/script/install/danbooru_local_config.rb.templ @@ -0,0 +1,5 @@ +module Danbooru + class CustomConfiguration < Configuration + # Define your custom overloads here + end +end diff --git a/config/database.yml.template b/script/install/database.yml.templ similarity index 100% rename from config/database.yml.template rename to script/install/database.yml.templ