Commit cae82ea9

mo khan <mo@mokhan.ca>
2013-07-27 21:17:14
mark delayed_job script as executable and move backup/restore tasks to postgres recipe
1 parent 1e9b105
Changed files (3)
config/recipes/delayed_job.rb
@@ -1,18 +1,21 @@
 namespace :delayed_job do 
   desc "start the delayed_job process"
   task :start, :roles => :app do
+    run "chmod +x #{current_path}/script/restart_delayed_job"
     run "cd #{current_path}; RAILS_ENV=#{rails_env} script/delayed_job start"
   end
   after "deploy:start", "delayed_job:start"
 
   desc "stop the delayed_job process"
   task :stop, :roles => :app do
+    run "chmod +x #{current_path}/script/restart_delayed_job"
     run "cd #{current_path}; RAILS_ENV=#{rails_env} script/delayed_job stop"
   end
   after "deploy:stop", "delayed_job:stop"
 
   desc "Restart the delayed_job process"
   task :restart, :roles => :app do
+    run "chmod +x #{current_path}/script/restart_delayed_job"
     run "cd #{current_path}; RAILS_ENV=#{rails_env} script/delayed_job restart"
   end
   after "deploy:restart", "delayed_job:restart"
config/recipes/postgresql.rb
@@ -32,6 +32,19 @@ namespace :postgresql do
     run "ln -nfs #{shared_path}/config/database.yml #{release_path}/config/database.yml"
   end
   after "deploy:finalize_update", "postgresql:symlink"
+
+  task :backup do
+    filename = "#{rails_env}-#{Time.now.strftime('%Y-%m-%d')}.sql"
+    run "pg_dump --clean #{postgresql_database} > ~/db/backups/#{filename}"
+    #run "PGPASSWORD=password pg_dump -Fc --no-acl --no-owner -h localhost -U cakeside cakeside_production > ~/db/backups/#{filename}"
+    download("db/backups/#{filename}", "db/backups/", :via => :scp, :recursive => true)
+  end
+
+  task :restore do
+    dumpfile = "~/db/backups/latest"
+    upload("latest", "db/backups/latest", :via => :scp)
+    run "psql #{postgresql_database} < #{dumpfile}"
+  end
 end
 
 #namespace :deploy do
capfile
@@ -1,19 +1,7 @@
 load 'deploy'
-load 'deploy/assets'
+#load 'deploy/assets'
 load 'config/deploy' # remove this line to skip loading any of the default tasks
 
-task :search_libs, :roles => :web do
-  run "ls -x1 /usr/lib | grep -i xml"
-end
-
-task :count_libs, :roles => :web do
-  run "ls -x1 /usr/lib | wc -l"
-end
-
-task :show_free_space, :roles => :web do
-  run "df -h /"
-end
-
 task :backup_db do
   filename = "#{deploy_env}-#{Time.now.strftime('%Y-%m-%d')}.sql"
   run "pg_dump --clean cakeside_production > ~/db/backups/#{filename}"