18 lines
666 B
Ruby
18 lines
666 B
Ruby
class BackupServer
|
|
@queue = :high
|
|
|
|
def self.perform()
|
|
#CronMail.time_check("Going to backup Orbit").deliver
|
|
dbhost = Mongoid.config.database.connection.primary.join ':'
|
|
dbname = Mongoid.config.database.name
|
|
archive_db_list_path = OrbitSystemPreference::ArchiveDbListPath
|
|
dbdirectory = "#{Rails.root}/tmp/#{dbname}-"+Time.now.strftime("%Y-%m-%d-%H-%M")
|
|
%x[mongodump -h #{dbhost} -d #{dbname} -o #{dbdirectory} ]
|
|
|
|
%x[rm #{archive_db_list_path}]
|
|
%x[ls #{Rails.root}/tmp/#{dbname}* | du -h --max-depth=1 --block-size=1M |sort -h >> #{archive_db_list_path}]
|
|
OrbitJobLogger.info "DB backup done Path:#{dbdirectory}"
|
|
|
|
end
|
|
end
|