s3backup 0.8.6 → 0.8.7

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.
@@ -1,68 +1,72 @@
1
- === 0.0.1 2009-10-21
2
-
3
- * 1 major enhancement:
4
- * Initial release
5
- === 0.6.3 2010-01-16
6
- * mod Access Error if the bucket was not found
7
- * mod bug if directory name has white space
8
-
9
- === 0.6.4 2010-01-18
10
- * mod bug if directory name has non english and shell special char
11
- * retry 5 times if data post fails.
12
-
13
- === 0.6.6 2010-01-19
14
- * add config max_retry_count
15
- * if ocurred "Connection reset by peer",retry max_retry_count times. default 6 waiting (30*try_count) second next post.
16
- * show http://scie.nti.st/2008/3/14/amazon-s3-and-connection-reset-by-peer
17
- * don't use raise,change exit and error log
18
- * config BUFESIZE to buffer_size
19
- * mod bug if directory name has '\'
20
-
21
-
22
- === 0.6.7 2010-01-19
23
- * default max_retry_count 6 to 10
24
- * add config log_level
25
-
26
- === 0.6.8 2010-01-19
27
- * default log level debug to info
28
-
29
- === 0.6.9 2010-01-20
30
- * modify problem for backup taget is huge,memory is burned out
31
- * default max_retry_count 10 to 20
32
-
33
- === 0.6.10 2010-01-25
34
- * mod bug if directory name has '#'
35
-
36
- === 0.7.01 2010-01-27
37
- * mod bug if passward is not set. very sorry.
38
- * change resume function default off. because use huge memory.
39
- * default max_retry_count 20 to 30 because resume function change off.
40
-
41
- === 0.7.2 2010-01-29
42
- * mod bug if directory name is started '-'
43
- * dereese use memory
44
-
45
- === 0.8.1 2010-02-11
46
- * mod bug if directory name is same , that can't restore(because it was not backuped).
47
- * change memory to sqlite3.
48
- * add config temporary. temporary is directory for temporary file
49
- * resume is mandatory.
50
-
51
- === 0.8.2 2010-02-11
52
- * remove dependency sqlite3 from Rakefile. for that reazon you should install sqlite3 manually.
53
- gem install sqlite3
54
-
55
- === 0.8.3 2010-02-12
56
- * change dependency gem sqlite3 to sqlite3-ruby
57
-
58
- === 0.8.4 2010-02-13
59
- * mod bug if directory name is so long,backup is failed.
60
- * mod bug temporary file was remained.
61
-
62
- === 0.8.5 2010-02-15
63
- * mod bug if symbolic link was differed before, backup is failed.
64
- * tar command output information level.
65
-
66
- === 0.8.6 2010-02-17
67
- * add GC.start each directory send.
68
- * change resume timing to each 10 send times. before each 10 directory
1
+ === 0.8.7 2011-12-30
2
+ * Jeweler
3
+ * Time object store integer in sqlite3 because time object couldn't store.
4
+
5
+ === 0.8.6 2010-02-17
6
+ * add GC.start each directory send.
7
+ * change resume timing to each 10 send times. before each 10 directory
8
+
9
+ === 0.8.5 2010-02-15
10
+ * mod bug if symbolic link was differed before, backup is failed.
11
+ * tar command output information level.
12
+
13
+ === 0.8.4 2010-02-13
14
+ * mod bug if directory name is so long,backup is failed.
15
+ * mod bug temporary file was remained.
16
+
17
+ === 0.8.3 2010-02-12
18
+ * change dependency gem sqlite3 to sqlite3-ruby
19
+
20
+ === 0.8.2 2010-02-11
21
+ * remove dependency sqlite3 from Rakefile. for that reazon you should install sqlite3 manually.
22
+ gem install sqlite3
23
+
24
+ === 0.8.1 2010-02-11
25
+ * mod bug if directory name is same , that can't restore(because it was not backuped).
26
+ * change memory to sqlite3.
27
+ * add config temporary. temporary is directory for temporary file
28
+ * resume is mandatory.
29
+
30
+ === 0.7.2 2010-01-29
31
+ * mod bug if directory name is started '-'
32
+ * dereese use memory
33
+
34
+ === 0.7.01 2010-01-27
35
+ * mod bug if passward is not set. very sorry.
36
+ * change resume function default off. because use huge memory.
37
+ * default max_retry_count 20 to 30 because resume function change off.
38
+
39
+ === 0.6.10 2010-01-25
40
+ * mod bug if directory name has '#'
41
+
42
+ === 0.6.9 2010-01-20
43
+ * modify problem for backup taget is huge,memory is burned out
44
+ * default max_retry_count 10 to 20
45
+
46
+ === 0.6.8 2010-01-19
47
+ * default log level debug to info
48
+
49
+ === 0.6.7 2010-01-19
50
+ * default max_retry_count 6 to 10
51
+ * add config log_level
52
+
53
+ === 0.6.6 2010-01-19
54
+ * add config max_retry_count
55
+ * if ocurred "Connection reset by peer",retry max_retry_count times. default 6 waiting (30*try_count) second next post.
56
+ * show http://scie.nti.st/2008/3/14/amazon-s3-and-connection-reset-by-peer
57
+ * don't use raise,change exit and error log
58
+ * config BUFESIZE to buffer_size
59
+ * mod bug if directory name has '\'
60
+
61
+ === 0.6.4 2010-01-18
62
+ * mod bug if directory name has non english and shell special char
63
+ * retry 5 times if data post fails.
64
+
65
+ === 0.6.3 2010-01-16
66
+ * mod Access Error if the bucket was not found
67
+ * mod bug if directory name has white space
68
+
69
+ === 0.0.1 2009-10-21
70
+
71
+ * 1 major enhancement:
72
+ * Initial release
data/Gemfile ADDED
@@ -0,0 +1,14 @@
1
+ source "http://rubygems.org"
2
+ # Add dependencies required to use your gem here.
3
+ # Example:
4
+ # gem "activesupport", ">= 2.3.5"
5
+ gem "aws-s3"
6
+ gem "sqlite3-ruby"
7
+ # Add dependencies to develop your gem here.
8
+ # Include everything needed to run rake, tests, features, etc.
9
+ group :development do
10
+ gem "rspec", "~> 2.3.0"
11
+ gem "bundler", "~> 1.0.0"
12
+ gem "jeweler", "~> 1.6.4"
13
+ gem "rcov", ">= 0"
14
+ end
data/LICENSE.txt ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2011 Takeshi Morita
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile CHANGED
@@ -1,26 +1,49 @@
1
- require 'rubygems'
2
- gem 'hoe', '>= 2.1.0'
3
- require 'hoe'
4
- require 'fileutils'
5
- require './lib/s3backup'
6
-
7
- Hoe.plugin :newgem
8
- # Hoe.plugin :website
9
- # Hoe.plugin :cucumberfeatures
10
-
11
- # Generate all the Rake tasks
12
- # Run 'rake -T' to see list of generated tasks (from gem root directory)
13
- $hoe = Hoe.spec 's3backup' do
14
- self.developer 'Takeshi Morita', 'morita@ibrains.co.jp'
15
- self.post_install_message = 'PostInstall.txt' # TODO remove if post-install message not required
16
- self.rubyforge_name = self.name # TODO this is default value
17
- self.extra_deps << ['aws-s3','>= 0.6.2']
18
- self.extra_deps << ['sqlite3-ruby']
19
- end
20
-
21
- require 'newgem/tasks'
22
- Dir['tasks/**/*.rake'].each { |t| load t }
23
-
24
- # TODO - want other tests/tasks run by default? Add them to the list
25
- # remove_task :default
26
- # task :default => [:spec, :features]
1
+ # encoding: utf-8
2
+
3
+ require 'rubygems'
4
+ require 'bundler'
5
+ begin
6
+ Bundler.setup(:default, :development)
7
+ rescue Bundler::BundlerError => e
8
+ $stderr.puts e.message
9
+ $stderr.puts "Run `bundle install` to install missing gems"
10
+ exit e.status_code
11
+ end
12
+ require 'rake'
13
+
14
+ require 'jeweler'
15
+ Jeweler::Tasks.new do |gem|
16
+ # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
17
+ gem.name = "s3backup"
18
+ gem.homepage = "http://github.com/takeshy/s3backup"
19
+ gem.license = "MIT"
20
+ gem.summary = %Q{backup tool to Amazon S3 with compressed.}
21
+ gem.description = %Q{backup tool to Amazon S3 with compressed and crypt.}
22
+ gem.email = "laten@nifty.com"
23
+ gem.authors = ["Takeshi Morita"]
24
+ # dependencies defined in Gemfile
25
+ end
26
+ Jeweler::RubygemsDotOrgTasks.new
27
+
28
+ require 'rspec/core'
29
+ require 'rspec/core/rake_task'
30
+ RSpec::Core::RakeTask.new(:spec) do |spec|
31
+ spec.pattern = FileList['spec/**/*_spec.rb']
32
+ end
33
+
34
+ RSpec::Core::RakeTask.new(:rcov) do |spec|
35
+ spec.pattern = 'spec/**/*_spec.rb'
36
+ spec.rcov = true
37
+ end
38
+
39
+ task :default => :spec
40
+
41
+ require 'rake/rdoctask'
42
+ Rake::RDocTask.new do |rdoc|
43
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
44
+
45
+ rdoc.rdoc_dir = 'rdoc'
46
+ rdoc.title = "s3backup #{version}"
47
+ rdoc.rdoc_files.include('README*')
48
+ rdoc.rdoc_files.include('lib/**/*.rb')
49
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.8.7
data/bin/s3backup CHANGED
@@ -4,7 +4,6 @@
4
4
  # Copyright (c) 2009. All rights reserved.
5
5
 
6
6
  require 'rubygems'
7
- require File.expand_path(File.dirname(__FILE__) + "/../lib/s3backup")
8
- require "s3backup/cli"
7
+ require "s3backup"
9
8
 
10
9
  S3backup::CLI.execute(STDOUT, ARGV)
data/lib/s3backup.rb CHANGED
@@ -1,5 +1,11 @@
1
- $:.unshift(File.dirname(__FILE__)) unless
2
- $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
1
+ require 's3backup/backup'
2
+ require 's3backup/cli'
3
+ require 's3backup/crypt'
4
+ require 's3backup/manager'
5
+ require 's3backup/restore'
6
+ require 's3backup/restore'
7
+ require 's3backup/s3log'
8
+ require 's3backup/s3wrapper'
9
+ require 's3backup/tree_info'
3
10
  module S3backup
4
- VERSION = '0.8.6'
5
11
  end
@@ -1,6 +1,3 @@
1
- require 's3backup/s3wrapper'
2
- require 's3backup/s3log'
3
- require 's3backup/manager'
4
1
  module S3backup
5
2
  class Backup
6
3
  def initialize(config)
data/lib/s3backup/cli.rb CHANGED
@@ -1,7 +1,5 @@
1
1
  require 'optparse'
2
2
  require 'yaml'
3
- require 's3backup/s3log'
4
-
5
3
  module S3backup
6
4
  class CLI
7
5
  DEFAULT_CONFIG='./backup.yml'
@@ -52,7 +50,7 @@ module S3backup
52
50
  S3log.set_logfile(File.open(options[:log],"a"))
53
51
  end
54
52
  if options[:restore]
55
- require 's3backup/restore'
53
+ FileUtils.mkdir_p(options[:output_dir])
56
54
  if !File.directory?(options[:output_dir])
57
55
  S3log.error("output directory #{options[:output_dir]} is not exist.")
58
56
  exit(-1)
@@ -60,7 +58,6 @@ module S3backup
60
58
  rt = Restore.new(options[:output_dir],YAML.load_file(options[:config_file]))
61
59
  rt.start
62
60
  else
63
- require 's3backup/backup'
64
61
  bk = Backup.new(YAML.load_file(options[:config_file]))
65
62
  bk.start
66
63
  end
@@ -1,9 +1,6 @@
1
1
  require 'cgi'
2
2
  require 'time'
3
3
  require 'fileutils'
4
- require 's3backup/s3log'
5
- require 's3backup/tree_info'
6
- require 's3backup/crypt'
7
4
  module S3backup
8
5
  class Manager
9
6
  DEFAULT_BUF_READ_SIZE=1024*1024*32
@@ -292,7 +289,7 @@ module S3backup
292
289
  dir_len = k.length
293
290
  relative_path = k.slice(top_dir_len,dir_len - top_dir_len)
294
291
  dir = output_dir + relative_path
295
- File.utime(now,Time.parse(v[:mtime]),dir)
292
+ File.utime(now,Time.at(v[:mtime]),dir)
296
293
  end
297
294
  }
298
295
  end
@@ -1,7 +1,4 @@
1
1
  require 'sqlite3'
2
- require 's3backup/s3wrapper'
3
- require 's3backup/s3log'
4
- require 's3backup/manager'
5
2
  module S3backup
6
3
  class Restore
7
4
  def initialize(output_dir,config)
@@ -29,7 +29,7 @@ module S3backup
29
29
  name = row[1]
30
30
  if File.basename(name) == File.basename(p_name)
31
31
  sql = "insert into file(name,size,mtime,directory_id) values (:name, :size, :mtime,:directory_id)"
32
- @db.execute(sql,:name=>"zetteiarienainamae#{id}",:size=>0,:mtime =>0,:directory_id=>p_id)
32
+ @db.execute(sql,:name=>"absolutely_no_exist_file_name#{id}",:size=>0,:mtime =>0,:directory_id=>p_id)
33
33
  end
34
34
  check_dirs(id,name)
35
35
  end
@@ -38,7 +38,7 @@ module S3backup
38
38
  file_map[:directory].keys().sort{|a,b| a<=>b}.each do |key|
39
39
  file_at = file_map[:directory][key]
40
40
  sql = "insert into directory(name,mtime) values (:name, :mtime)"
41
- @db.execute(sql,:name=>key,:mtime => file_at[:mtime] )
41
+ @db.execute(sql,:name=>key,:mtime => file_at[:mtime].to_i )
42
42
  end
43
43
  @db.execute('select id,name from directory' ) do |row|
44
44
  dir_id = row[0].to_i
@@ -66,7 +66,7 @@ module S3backup
66
66
  next
67
67
  end
68
68
  sql = "insert into file(name,size,mtime,directory_id) values (:name, :size, :mtime,:directory_id)"
69
- @db.execute(sql,:name=>key,:size=>file_at[:size],:mtime => file_at[:date], :directory_id=>dir_id)
69
+ @db.execute(sql,:name=>key,:size=>file_at[:size],:mtime => file_at[:date].to_i, :directory_id=>dir_id)
70
70
  end
71
71
  file_map[:symlink].each do |key,val|
72
72
  file_at = file_map[:symlink][key]
@@ -94,7 +94,7 @@ module S3backup
94
94
  make_table
95
95
  stat = File.stat(opt[:directory])
96
96
  sql = "insert into directory(name,mtime) values (:name, :mtime)"
97
- @db.execute(sql,:name=>opt[:directory],:mtime =>stat.mtime)
97
+ @db.execute(sql,:name=>opt[:directory],:mtime =>stat.mtime.to_i)
98
98
  dir_id = nil
99
99
  @db.execute('select id from directory where name=?',opt[:directory]) do |row|
100
100
  #rowは結果の配列
@@ -115,7 +115,7 @@ module S3backup
115
115
  if File.directory?(name)
116
116
  stat = File.stat(name)
117
117
  sql = "insert into directory(name,mtime,parent_directory_id) values (:name, :mtime,:parent_directory_id)"
118
- @db.execute(sql,:name=>name,:mtime =>stat.mtime,:parent_directory_id=>id)
118
+ @db.execute(sql,:name=>name,:mtime =>stat.mtime.to_i,:parent_directory_id=>id)
119
119
  dir_id = nil
120
120
  @db.execute('select id from directory where name=?',name) do |row|
121
121
  #rowは結果の配列
@@ -128,7 +128,7 @@ module S3backup
128
128
  else
129
129
  stat = File.stat(name)
130
130
  sql = "insert into file(name,size,mtime,directory_id) values (:name, :size, :mtime,:directory_id)"
131
- @db.execute(sql,:name=>name,:size=>stat.size,:mtime => stat.mtime, :directory_id=>id)
131
+ @db.execute(sql,:name=>name,:size=>stat.size,:mtime => stat.mtime.to_i, :directory_id=>id)
132
132
  end
133
133
  end
134
134
  end
@@ -145,16 +145,16 @@ module S3backup
145
145
  @db.execute("delete from symlink where directory_id = #{id}")
146
146
 
147
147
  @db.execute("update directory set mtime = ?,parent_directory_id = ?" +
148
- " where id = ?",dir_info[:mtime],p_id,id)
148
+ " where id = ?",dir_info[:mtime].to_i,p_id,id)
149
149
  else
150
150
  @db.execute("insert into directory(name,mtime,parent_directory_id) values(?,?,?)",
151
- dir_info[:name],dir_info[:mtime],p_id)
151
+ dir_info[:name],dir_info[:mtime].to_i,p_id)
152
152
  result = @db.execute("select id from directory where name = ?",dir_info[:name])
153
153
  id = result[0][0]
154
154
  end
155
155
  dir_info[:files].each do |f|
156
156
  @db.execute("insert into file(name,mtime,size,directory_id) values(?,?,?,?)",
157
- f[:name],f[:mtime],f[:size],id)
157
+ f[:name],f[:mtime].to_i,f[:size],id)
158
158
  end
159
159
  dir_info[:links].each do |f|
160
160
  @db.execute("insert into symlink(name,source,directory_id) values(?,?,?)",f[:name],f[:source],id)
@@ -164,9 +164,9 @@ module S3backup
164
164
  @db.execute('select id,name,mtime from directory where parent_directory_id = ?',p_id) do |row|
165
165
  id = row[0]
166
166
  name = row[1]
167
- mtime = row[2]
167
+ mtime = row[2].to_i
168
168
  tree[level] = {} unless tree[level]
169
- tree[level][name] = {:mtime=>mtime}
169
+ tree[level][name] = {:mtime=>mtime.to_i}
170
170
  get_level_directory(tree,id,level+1)
171
171
  end
172
172
  end
@@ -179,7 +179,7 @@ module S3backup
179
179
  end
180
180
  id = result[0][0]
181
181
  name = result[0][1]
182
- mtime = result[0][2]
182
+ mtime = result[0][2].to_i
183
183
  tree[0] = {}
184
184
  tree[0][name]={:mtime=>mtime}
185
185
  get_level_directory(tree,id,1)
@@ -192,7 +192,7 @@ module S3backup
192
192
  break if result.length == 0
193
193
  now_id = result[0][0].to_i
194
194
  name = result[0][1]
195
- mtime = result[0][2]
195
+ mtime = result[0][2].to_i
196
196
  files = []
197
197
  links = []
198
198
  t_result = target.db.execute("select id,name from directory where name = ?",name)
@@ -210,13 +210,13 @@ module S3backup
210
210
  end
211
211
  file_infos = []
212
212
  files.each do |f|
213
- file_infos.push({:name=>f[0],:size=>f[1],:mtime=>f[2]})
213
+ file_infos.push({:name=>f[0],:size=>f[1],:mtime=>f[2].to_i})
214
214
  end
215
215
  sym_infos = []
216
216
  links.each do |l|
217
217
  sym_infos.push({:name=>l[0],:source=>l[1]})
218
218
  end
219
- yield({:name => name,:mtime=>mtime,:files => file_infos ,:links => sym_infos})
219
+ yield({:name => name,:mtime=>mtime.to_i,:files => file_infos ,:links => sym_infos})
220
220
  end
221
221
  end
222
222
  def remove(target)
data/s3backup.gemspec ADDED
@@ -0,0 +1,74 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "s3backup"
8
+ s.version = "0.8.7"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Takeshi Morita"]
12
+ s.date = "2011-12-30"
13
+ s.description = "backup tool to Amazon S3 with compressed and crypt."
14
+ s.email = "laten@nifty.com"
15
+ s.executables = ["s3backup"]
16
+ s.extra_rdoc_files = [
17
+ "ChangeLog",
18
+ "LICENSE.txt",
19
+ "README.rdoc"
20
+ ]
21
+ s.files = [
22
+ "ChangeLog",
23
+ "Gemfile",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "backup.yml",
29
+ "bin/s3backup",
30
+ "lib/s3backup.rb",
31
+ "lib/s3backup/backup.rb",
32
+ "lib/s3backup/cli.rb",
33
+ "lib/s3backup/crypt.rb",
34
+ "lib/s3backup/manager.rb",
35
+ "lib/s3backup/restore.rb",
36
+ "lib/s3backup/s3log.rb",
37
+ "lib/s3backup/s3wrapper.rb",
38
+ "lib/s3backup/tree_info.rb",
39
+ "s3backup.gemspec"
40
+ ]
41
+ s.homepage = "http://github.com/takeshy/s3backup"
42
+ s.licenses = ["MIT"]
43
+ s.require_paths = ["lib"]
44
+ s.rubygems_version = "1.8.11"
45
+ s.summary = "backup tool to Amazon S3 with compressed."
46
+
47
+ if s.respond_to? :specification_version then
48
+ s.specification_version = 3
49
+
50
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
51
+ s.add_runtime_dependency(%q<aws-s3>, [">= 0"])
52
+ s.add_runtime_dependency(%q<sqlite3-ruby>, [">= 0"])
53
+ s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
54
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
55
+ s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
56
+ s.add_development_dependency(%q<rcov>, [">= 0"])
57
+ else
58
+ s.add_dependency(%q<aws-s3>, [">= 0"])
59
+ s.add_dependency(%q<sqlite3-ruby>, [">= 0"])
60
+ s.add_dependency(%q<rspec>, ["~> 2.3.0"])
61
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
62
+ s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
63
+ s.add_dependency(%q<rcov>, [">= 0"])
64
+ end
65
+ else
66
+ s.add_dependency(%q<aws-s3>, [">= 0"])
67
+ s.add_dependency(%q<sqlite3-ruby>, [">= 0"])
68
+ s.add_dependency(%q<rspec>, ["~> 2.3.0"])
69
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
70
+ s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
71
+ s.add_dependency(%q<rcov>, [">= 0"])
72
+ end
73
+ end
74
+
metadata CHANGED
@@ -1,84 +1,98 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: s3backup
3
- version: !ruby/object:Gem::Version
4
- version: 0.8.6
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.8.7
5
+ prerelease:
5
6
  platform: ruby
6
- authors:
7
+ authors:
7
8
  - Takeshi Morita
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
-
12
- date: 2010-02-17 00:00:00 +09:00
13
- default_executable:
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
12
+ date: 2011-12-30 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
16
15
  name: aws-s3
16
+ requirement: &14516100 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
17
22
  type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: 0.6.2
24
- version:
25
- - !ruby/object:Gem::Dependency
23
+ prerelease: false
24
+ version_requirements: *14516100
25
+ - !ruby/object:Gem::Dependency
26
26
  name: sqlite3-ruby
27
+ requirement: &14514160 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
27
33
  type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: "0"
34
- version:
35
- - !ruby/object:Gem::Dependency
36
- name: rubyforge
34
+ prerelease: false
35
+ version_requirements: *14514160
36
+ - !ruby/object:Gem::Dependency
37
+ name: rspec
38
+ requirement: &14513300 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 2.3.0
37
44
  type: :development
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- version: 2.0.3
44
- version:
45
- - !ruby/object:Gem::Dependency
46
- name: gemcutter
45
+ prerelease: false
46
+ version_requirements: *14513300
47
+ - !ruby/object:Gem::Dependency
48
+ name: bundler
49
+ requirement: &14512300 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.0.0
47
55
  type: :development
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: 0.3.0
54
- version:
55
- - !ruby/object:Gem::Dependency
56
- name: hoe
56
+ prerelease: false
57
+ version_requirements: *14512300
58
+ - !ruby/object:Gem::Dependency
59
+ name: jeweler
60
+ requirement: &14527620 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 1.6.4
57
66
  type: :development
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- version: 2.5.0
64
- version:
65
- description: S3Backup is a backup tool to local directory to Amazon S3.
66
- email:
67
- - morita@ibrains.co.jp
68
- executables:
67
+ prerelease: false
68
+ version_requirements: *14527620
69
+ - !ruby/object:Gem::Dependency
70
+ name: rcov
71
+ requirement: &14526560 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *14526560
80
+ description: backup tool to Amazon S3 with compressed and crypt.
81
+ email: laten@nifty.com
82
+ executables:
69
83
  - s3backup
70
84
  extensions: []
71
-
72
- extra_rdoc_files:
73
- - History.txt
74
- - Manifest.txt
75
- - PostInstall.txt
76
- files:
77
- - History.txt
78
- - Manifest.txt
79
- - PostInstall.txt
85
+ extra_rdoc_files:
86
+ - ChangeLog
87
+ - LICENSE.txt
88
+ - README.rdoc
89
+ files:
90
+ - ChangeLog
91
+ - Gemfile
92
+ - LICENSE.txt
80
93
  - README.rdoc
81
94
  - Rakefile
95
+ - VERSION
82
96
  - backup.yml
83
97
  - bin/s3backup
84
98
  - lib/s3backup.rb
@@ -90,42 +104,33 @@ files:
90
104
  - lib/s3backup/s3log.rb
91
105
  - lib/s3backup/s3wrapper.rb
92
106
  - lib/s3backup/tree_info.rb
93
- - script/console
94
- - script/destroy
95
- - script/generate
96
- - spec/s3backup_cli_spec.rb
97
- - spec/s3backup_spec.rb
98
- - spec/spec.opts
99
- - spec/spec_helper.rb
100
- - tasks/rspec.rake
101
- has_rdoc: true
102
- homepage: http://rubyforge.org/projects/s3backup/
103
- licenses: []
104
-
105
- post_install_message: PostInstall.txt
106
- rdoc_options:
107
- - --main
108
- - README.rdoc
109
- require_paths:
107
+ - s3backup.gemspec
108
+ homepage: http://github.com/takeshy/s3backup
109
+ licenses:
110
+ - MIT
111
+ post_install_message:
112
+ rdoc_options: []
113
+ require_paths:
110
114
  - lib
111
- required_ruby_version: !ruby/object:Gem::Requirement
112
- requirements:
113
- - - ">="
114
- - !ruby/object:Gem::Version
115
- version: "0"
116
- version:
117
- required_rubygems_version: !ruby/object:Gem::Requirement
118
- requirements:
119
- - - ">="
120
- - !ruby/object:Gem::Version
121
- version: "0"
122
- version:
115
+ required_ruby_version: !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ! '>='
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
121
+ segments:
122
+ - 0
123
+ hash: -2878226757988658176
124
+ required_rubygems_version: !ruby/object:Gem::Requirement
125
+ none: false
126
+ requirements:
127
+ - - ! '>='
128
+ - !ruby/object:Gem::Version
129
+ version: '0'
123
130
  requirements: []
124
-
125
- rubyforge_project: s3backup
126
- rubygems_version: 1.3.5
131
+ rubyforge_project:
132
+ rubygems_version: 1.8.11
127
133
  signing_key:
128
134
  specification_version: 3
129
- summary: S3Backup is a backup tool to local directory to Amazon S3.
135
+ summary: backup tool to Amazon S3 with compressed.
130
136
  test_files: []
131
-
data/Manifest.txt DELETED
@@ -1,24 +0,0 @@
1
- History.txt
2
- Manifest.txt
3
- PostInstall.txt
4
- README.rdoc
5
- Rakefile
6
- backup.yml
7
- bin/s3backup
8
- lib/s3backup.rb
9
- lib/s3backup/backup.rb
10
- lib/s3backup/cli.rb
11
- lib/s3backup/crypt.rb
12
- lib/s3backup/manager.rb
13
- lib/s3backup/restore.rb
14
- lib/s3backup/s3log.rb
15
- lib/s3backup/s3wrapper.rb
16
- lib/s3backup/tree_info.rb
17
- script/console
18
- script/destroy
19
- script/generate
20
- spec/s3backup_cli_spec.rb
21
- spec/s3backup_spec.rb
22
- spec/spec.opts
23
- spec/spec_helper.rb
24
- tasks/rspec.rake
data/PostInstall.txt DELETED
@@ -1,7 +0,0 @@
1
-
2
- For more information on s3backup, see http://s3backup.rubyforge.org
3
-
4
- NOTE: Change this information in PostInstall.txt
5
- You can also delete it if you don't want it.
6
-
7
-
data/script/console DELETED
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # File: script/console
3
- irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb'
4
-
5
- libs = " -r irb/completion"
6
- # Perhaps use a console_lib to store any extra methods I may want available in the cosole
7
- # libs << " -r #{File.dirname(__FILE__) + '/../lib/console_lib/console_logger.rb'}"
8
- libs << " -r #{File.dirname(__FILE__) + '/../lib/s3backup.rb'}"
9
- puts "Loading s3backup gem"
10
- exec "#{irb} #{libs} --simple-prompt"
data/script/destroy DELETED
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
3
-
4
- begin
5
- require 'rubigen'
6
- rescue LoadError
7
- require 'rubygems'
8
- require 'rubigen'
9
- end
10
- require 'rubigen/scripts/destroy'
11
-
12
- ARGV.shift if ['--help', '-h'].include?(ARGV[0])
13
- RubiGen::Base.use_component_sources! [:rubygems, :newgem, :newgem_theme, :test_unit]
14
- RubiGen::Scripts::Destroy.new.run(ARGV)
data/script/generate DELETED
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
- APP_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
3
-
4
- begin
5
- require 'rubigen'
6
- rescue LoadError
7
- require 'rubygems'
8
- require 'rubigen'
9
- end
10
- require 'rubigen/scripts/generate'
11
-
12
- ARGV.shift if ['--help', '-h'].include?(ARGV[0])
13
- RubiGen::Base.use_component_sources! [:rubygems, :newgem, :newgem_theme, :test_unit]
14
- RubiGen::Scripts::Generate.new.run(ARGV)
@@ -1,15 +0,0 @@
1
- require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
- require 's3backup/cli'
3
-
4
- describe S3backup::CLI, "execute" do
5
- before(:each) do
6
- @stdout_io = StringIO.new
7
- S3backup::CLI.execute(@stdout_io, [])
8
- @stdout_io.rewind
9
- @stdout = @stdout_io.read
10
- end
11
-
12
- it "should print default output" do
13
- @stdout.should =~ /To update this executable/
14
- end
15
- end
@@ -1,11 +0,0 @@
1
- require File.dirname(__FILE__) + '/spec_helper.rb'
2
-
3
- # Time to add your specs!
4
- # http://rspec.info/
5
- describe "Place your specs here" do
6
-
7
- it "find this spec in spec directory" do
8
- # violated "Be sure to write your specs"
9
- end
10
-
11
- end
data/spec/spec.opts DELETED
@@ -1 +0,0 @@
1
- --colour
data/spec/spec_helper.rb DELETED
@@ -1,10 +0,0 @@
1
- begin
2
- require 'spec'
3
- rescue LoadError
4
- require 'rubygems' unless ENV['NO_RUBYGEMS']
5
- gem 'rspec'
6
- require 'spec'
7
- end
8
-
9
- $:.unshift(File.dirname(__FILE__) + '/../lib')
10
- require 's3backup'
data/tasks/rspec.rake DELETED
@@ -1,21 +0,0 @@
1
- begin
2
- require 'spec'
3
- rescue LoadError
4
- require 'rubygems' unless ENV['NO_RUBYGEMS']
5
- require 'spec'
6
- end
7
- begin
8
- require 'spec/rake/spectask'
9
- rescue LoadError
10
- puts <<-EOS
11
- To use rspec for testing you must install rspec gem:
12
- gem install rspec
13
- EOS
14
- exit(0)
15
- end
16
-
17
- desc "Run the specs under spec/models"
18
- Spec::Rake::SpecTask.new do |t|
19
- t.spec_opts = ['--options', "spec/spec.opts"]
20
- t.spec_files = FileList['spec/**/*_spec.rb']
21
- end