keepitsafe 0.1.7 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.7
1
+ 0.1.10
data/keepitsafe.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "keepitsafe"
8
- s.version = "0.1.7"
8
+ s.version = "0.1.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Darwin"]
12
- s.date = "2012-01-16"
12
+ s.date = "2012-01-20"
13
13
  s.description = "A Gem for simple creation of backup scripts"
14
14
  s.email = "darwin.git@marianna.se"
15
15
  s.extra_rdoc_files = [
@@ -49,7 +49,7 @@ Gem::Specification.new do |s|
49
49
  s.homepage = "http://github.com/bjornblomqvist/keepitsafe"
50
50
  s.licenses = ["MIT"]
51
51
  s.require_paths = ["lib"]
52
- s.rubygems_version = "1.8.10"
52
+ s.rubygems_version = "1.8.15"
53
53
  s.summary = "A Gem for simple creation of backup scripts"
54
54
 
55
55
  if s.respond_to? :specification_version then
data/lib/keepitsafe.rb CHANGED
@@ -65,10 +65,13 @@ class Keepitsafe
65
65
  (run_cmd("ls #{path}") || '').match(/No such file or directory/).nil?
66
66
  end
67
67
 
68
- def upload src,target
68
+ def upload src,target,create_target_dir = false
69
69
  src = run_cmd("echo #{src}").strip # expand "~/"
70
70
  target = `echo #{target}`.strip # expand "~/"
71
71
  puts "local:#{src} => remote:#{target}"
72
+
73
+ run_cmd("mkdir -p #{target.end_with?("/") ? target : File.dirname(target)}" ) if create_target_dir
74
+
72
75
  if on_localhost?
73
76
  `cp -a #{src} #{target}`
74
77
  else
@@ -76,10 +79,30 @@ class Keepitsafe
76
79
  end
77
80
  end
78
81
 
79
- def download src,target
82
+ def download_backup
83
+
84
+ path = if !run_cmd("ls #{tar_path}").match(/No such file or directory/)
85
+ tar_path
86
+ elsif !run_cmd("ls #{tar_gz_path}").match(/No such file or directory/)
87
+ tar_gz_path
88
+ elsif !run_cmd("ls #{backup_target_dir}").match(/No such file or directory/)
89
+ backup_target_dir
90
+ else
91
+ raise "This code sucks as we cant find a file to transfer =("
92
+ end
93
+
94
+ puts "\n\t backup.download_backup()\n\n"
95
+ download(path,path,true)
96
+
97
+ end
98
+
99
+ def download src,target,create_target_dir = false
80
100
  src = run_cmd("echo #{src}").strip # expand "~/"
81
101
  target = `echo #{target}`.strip # expand "~/"
82
102
  puts "remote:#{src} => local:#{target}"
103
+
104
+ `mkdir -p #{target.end_with?("/") ? target : File.dirname(target)}` if create_target_dir
105
+
83
106
  if on_localhost?
84
107
  `cp -a #{src} #{target}`
85
108
  else
@@ -40,7 +40,7 @@ module BackupPlugins
40
40
  end
41
41
 
42
42
  def remove_old_backups
43
- remove(backup.run_cmd('ls -m ~/backups/').strip.split(/,\s/).map{|path| "~/backups/#{path}" }) do |backups|
43
+ remove(run_cmd('ls -m ~/backups/').strip.split(/,\s/).map{|path| "~/backups/#{path}" }) do |backups|
44
44
 
45
45
  # First backup of each month 1 years back
46
46
  months = keep_first_each_month(backups,1.years.ago)
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: keepitsafe
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.7
5
+ version: 0.1.10
6
6
  platform: ruby
7
7
  authors:
8
8
  - Darwin
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2012-01-16 00:00:00 Z
13
+ date: 2012-01-20 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -173,7 +173,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
173
173
  requirements:
174
174
  - - ">="
175
175
  - !ruby/object:Gem::Version
176
- hash: 1746996823270489420
176
+ hash: -880363802644508244
177
177
  segments:
178
178
  - 0
179
179
  version: "0"
@@ -186,7 +186,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
186
186
  requirements: []
187
187
 
188
188
  rubyforge_project:
189
- rubygems_version: 1.8.10
189
+ rubygems_version: 1.8.15
190
190
  signing_key:
191
191
  specification_version: 3
192
192
  summary: A Gem for simple creation of backup scripts