add mysql dump cron and task
This commit is contained in:
parent
cd8d9989cf
commit
94135827ce
2 changed files with 14 additions and 12 deletions
|
|
@ -1,3 +1,4 @@
|
||||||
#statistics
|
#statistics
|
||||||
42 15 * * * cd /usr/local/app/diaspora && exec /usr/local/bin/ruby /usr/local/bin/bundle exec rake --trace statistics:users_splunk &> /usr/local/app/diaspora/log/stats.log
|
42 15 * * * cd /usr/local/app/diaspora && exec /usr/local/bin/ruby /usr/local/bin/bundle exec rake --trace statistics:users_splunk &> /usr/local/app/diaspora/log/stats.log
|
||||||
42 15 * * * cd /usr/local/app/diaspora && exec /usr/local/bin/ruby /usr/local/bin/bundle exec rake --trace statistics:content_splunk &> /usr/local/app/diaspora/log/stats.log
|
42 15 * * * cd /usr/local/app/diaspora && exec /usr/local/bin/ruby /usr/local/bin/bundle exec rake --trace statistics:content_splunk &> /usr/local/app/diaspora/log/stats.log
|
||||||
|
0 * * * * cd /usr/local/app/diaspora && exec /usr/local/bin/ruby /usr/local/bin/bundle exec rake --trace backup:mysql
|
||||||
|
|
|
||||||
|
|
@ -1,31 +1,32 @@
|
||||||
namespace :backup do
|
namespace :backup do
|
||||||
desc "Backup Mongo"
|
desc "Backup Mysql"
|
||||||
require File.join(Rails.root, 'config', 'initializers', '_load_app_config.rb')
|
require File.join(Rails.root, 'config', 'initializers', '_load_app_config.rb')
|
||||||
require 'cloudfiles'
|
require 'cloudfiles'
|
||||||
|
|
||||||
task :mongo do
|
task :mysql do
|
||||||
puts("event=backup status=start type=mongo")
|
puts("event=backup status=start type=mysql")
|
||||||
|
|
||||||
if AppConfig[:cloudfiles_username] && AppConfig[:cloudfiles_api_key]
|
if AppConfig[:cloudfiles_username] && AppConfig[:cloudfiles_api_key]
|
||||||
puts "Logging into Cloud Files"
|
puts "Logging into Cloud Files"
|
||||||
|
|
||||||
cf = CloudFiles::Connection.new(:username => AppConfig[:cloudfiles_username], :api_key => AppConfig[:cloudfiles_api_key])
|
cf = CloudFiles::Connection.new(:username => AppConfig[:cloudfiles_username], :api_key => AppConfig[:cloudfiles_api_key])
|
||||||
mongo_container = cf.container("Mongo Backup")
|
mysql_container = cf.container("MySQL Backup")
|
||||||
|
|
||||||
puts "Dumping Mongo"
|
puts "Dumping Mysql"
|
||||||
`mongodump -o /tmp/backup/mongo`
|
`mkdir -p /tmp/backup/mysql`
|
||||||
|
`mysqldump diaspora_production >> /tmp/backup/mysql/backup.txt `
|
||||||
|
|
||||||
tar_name = "mongo_#{Time.now.to_i}.tar"
|
tar_name = "mysql_#{Time.now.to_i}.tar"
|
||||||
`tar cfP /tmp/backup/#{tar_name} /tmp/backup/mongo`
|
`tar cfP /tmp/backup/#{tar_name} /tmp/backup/mysql`
|
||||||
|
|
||||||
file = mongo_container.create_object(tar_name)
|
file = mysql_container.create_object(tar_name)
|
||||||
|
|
||||||
if file.write File.open("/tmp/backup/" + tar_name)
|
if file.write File.open("/tmp/backup/" + tar_name)
|
||||||
puts("event=backup status=success type=mongo")
|
puts("event=backup status=success type=mysql")
|
||||||
`rm /tmp/backup/#{tar_name}`
|
`rm /tmp/backup/#{tar_name}`
|
||||||
`rm -rf /tmp/backup/mongo/`
|
`rm -rf /tmp/backup/mysql/`
|
||||||
else
|
else
|
||||||
puts("event=backup status=failure type=mongo")
|
puts("event=backup status=failure type=mysql")
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
puts "Cloudfiles username and api key needed"
|
puts "Cloudfiles username and api key needed"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue