backuper 2.0.5 → 2.0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/VERSION +1 -1
  2. data/lib/backuper.rb +29 -0
  3. metadata +5 -7
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.5
1
+ 2.0.6
@@ -73,6 +73,35 @@ class Backuper
73
73
  end
74
74
  end
75
75
 
76
+ def perform_mongodb_backup
77
+ if mongodb_params == {}
78
+ puts "Skipping MongoDB backup as no configurtion given"
79
+ return
80
+ end
81
+
82
+ timestamp = "#{Time.now.strftime('%Y-%m-%d-%s')}"
83
+ local_current_backup_path = "#{local_backup_base_path}/mongodb/#{timestamp}"
84
+ local_latest_backup_path = Dir["#{local_backup_base_path}/mongodb/*"].sort.last
85
+
86
+ unless File.exist?("#{local_backup_base_path}/mongodb")
87
+ system "mkdir #{local_backup_base_path}/mongodb"
88
+ end
89
+
90
+ # Local backup
91
+
92
+ puts "Performing local backup of database '#{mysql_params['database']}' as user '#{mysql_params['username']}'"
93
+ system "mkdir #{local_current_backup_path}"
94
+ system "nice -n 10 mongodump #{mongodb_params['database']} --out #{local_current_backup_path}"
95
+
96
+ # Cleanup of old versions
97
+
98
+ Dir["#{local_backup_base_path}/mongodb/*"].sort.reverse.each_with_index do |backup_version, index|
99
+ if index >= max_kept_backups
100
+ system "rm -rf #{backup_version}"
101
+ end
102
+ end
103
+ end
104
+
76
105
  def perform_remote_sync
77
106
  puts "Performing remote backup sync"
78
107
  system "nice -n 10 rsync -azH --delete #{local_backup_base_path} #{remote_backup_ssh_info}"
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: backuper
3
3
  version: !ruby/object:Gem::Version
4
- hash: 5
4
+ hash: 3
5
5
  prerelease:
6
6
  segments:
7
7
  - 2
8
8
  - 0
9
- - 5
10
- version: 2.0.5
9
+ - 6
10
+ version: 2.0.6
11
11
  platform: ruby
12
12
  authors:
13
13
  - "Aur\xC3\xA9lien Malisart"
@@ -15,8 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-31 00:00:00 +02:00
19
- default_executable:
18
+ date: 2011-05-31 00:00:00 Z
20
19
  dependencies: []
21
20
 
22
21
  description: simple server backup tool
@@ -34,7 +33,6 @@ files:
34
33
  - VERSION
35
34
  - backuper.gemspec
36
35
  - lib/backuper.rb
37
- has_rdoc: true
38
36
  homepage: http://github.com/aurels/backuper
39
37
  licenses: []
40
38
 
@@ -64,7 +62,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
64
62
  requirements: []
65
63
 
66
64
  rubyforge_project:
67
- rubygems_version: 1.5.3
65
+ rubygems_version: 1.8.5
68
66
  signing_key:
69
67
  specification_version: 3
70
68
  summary: simple server backup tool