webtranslateit-safe 0.4.0 → 0.4.1

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.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +445 -32
  3. data/CHANGELOG +4 -5
  4. data/Gemfile.lock +1 -1
  5. data/bin/webtranslateit-safe +16 -16
  6. data/lib/webtranslateit/safe/archive.rb +4 -9
  7. data/lib/webtranslateit/safe/backup.rb +2 -9
  8. data/lib/webtranslateit/safe/cloudfiles.rb +1 -1
  9. data/lib/webtranslateit/safe/config/builder.rb +6 -16
  10. data/lib/webtranslateit/safe/config/node.rb +14 -21
  11. data/lib/webtranslateit/safe/ftp.rb +26 -26
  12. data/lib/webtranslateit/safe/gpg.rb +2 -8
  13. data/lib/webtranslateit/safe/gzip.rb +1 -5
  14. data/lib/webtranslateit/safe/local.rb +12 -16
  15. data/lib/webtranslateit/safe/mongodump.rb +6 -13
  16. data/lib/webtranslateit/safe/mysqldump.rb +5 -9
  17. data/lib/webtranslateit/safe/pgdump.rb +9 -9
  18. data/lib/webtranslateit/safe/pipe.rb +0 -6
  19. data/lib/webtranslateit/safe/s3.rb +1 -1
  20. data/lib/webtranslateit/safe/sftp.rb +25 -33
  21. data/lib/webtranslateit/safe/sink.rb +4 -9
  22. data/lib/webtranslateit/safe/source.rb +9 -13
  23. data/lib/webtranslateit/safe/stream.rb +6 -14
  24. data/lib/webtranslateit/safe/svndump.rb +1 -5
  25. data/lib/webtranslateit/safe/tmp_file.rb +11 -16
  26. data/lib/webtranslateit/safe/version.rb +1 -5
  27. data/lib/webtranslateit/safe.rb +9 -11
  28. data/spec/webtranslateit/safe/archive_spec.rb +20 -20
  29. data/spec/webtranslateit/safe/cloudfiles_spec.rb +1 -1
  30. data/spec/webtranslateit/safe/config_spec.rb +31 -31
  31. data/spec/webtranslateit/safe/gpg_spec.rb +35 -35
  32. data/spec/webtranslateit/safe/gzip_spec.rb +11 -11
  33. data/spec/webtranslateit/safe/local_spec.rb +27 -27
  34. data/spec/webtranslateit/safe/mongodump_spec.rb +23 -23
  35. data/spec/webtranslateit/safe/mysqldump_spec.rb +30 -30
  36. data/spec/webtranslateit/safe/pgdump_spec.rb +13 -13
  37. data/spec/webtranslateit/safe/s3_spec.rb +1 -1
  38. data/spec/webtranslateit/safe/svndump_spec.rb +9 -9
  39. data/webtranslateit-safe.gemspec +6 -7
  40. metadata +2 -2
@@ -3,10 +3,10 @@ require 'spec_helper'
3
3
  describe WebTranslateIt::Safe::Gpg do
4
4
  def def_backup
5
5
  {
6
- compressed: false,
7
- command: 'command',
8
- extension: '.foo',
9
- filename: 'qweqwe'
6
+ :compressed => false,
7
+ :command => 'command',
8
+ :extension => '.foo',
9
+ :filename => 'qweqwe'
10
10
  }
11
11
  end
12
12
 
@@ -22,27 +22,27 @@ describe WebTranslateIt::Safe::Gpg do
22
22
  describe :process do
23
23
 
24
24
  before(:each) do
25
- @gpg = gpg
26
- stub(@gpg).gpg_password_file { 'pwd-file' }
27
- stub(@gpg).pipe { '|gpg -BLAH' }
25
+ @gpg = gpg()
26
+ stub(@gpg).gpg_password_file {'pwd-file'}
27
+ stub(@gpg).pipe {'|gpg -BLAH'}
28
28
  end
29
29
 
30
30
  describe 'when active' do
31
31
  before(:each) do
32
- stub(@gpg).active? { true }
32
+ stub(@gpg).active? {true}
33
33
  end
34
34
 
35
- it 'adds .gpg extension' do
35
+ it 'should add .gpg extension' do
36
36
  mock(@gpg.backup.extension) << '.gpg'
37
37
  @gpg.process
38
38
  end
39
39
 
40
- it 'adds command pipe' do
40
+ it 'should add command pipe' do
41
41
  mock(@gpg.backup.command) << (/\|gpg -BLAH/)
42
42
  @gpg.process
43
43
  end
44
44
 
45
- it 'sets compressed' do
45
+ it 'should set compressed' do
46
46
  mock(@gpg.backup).compressed = true
47
47
  @gpg.process
48
48
  end
@@ -50,20 +50,20 @@ describe WebTranslateIt::Safe::Gpg do
50
50
 
51
51
  describe 'when inactive' do
52
52
  before(:each) do
53
- stub(@gpg).active? { false }
53
+ stub(@gpg).active? {false}
54
54
  end
55
55
 
56
- it 'does not touch extension' do
56
+ it 'should not touch extension' do
57
57
  dont_allow(@gpg.backup.extension) << anything
58
58
  @gpg.process
59
59
  end
60
60
 
61
- it 'does not touch command' do
61
+ it 'should not touch command' do
62
62
  dont_allow(@gpg.backup.command) << anything
63
63
  @gpg.process
64
64
  end
65
65
 
66
- it 'does not touch compressed' do
66
+ it 'should not touch compressed' do
67
67
  dont_allow(@gpg.backup).compressed = anything
68
68
  @gpg.process
69
69
  end
@@ -73,27 +73,27 @@ describe WebTranslateIt::Safe::Gpg do
73
73
  describe :active? do
74
74
 
75
75
  describe 'with key' do
76
- it 'is true' do
77
- expect(gpg(gpg: {key: :foo})).to be_active
76
+ it 'should be true' do
77
+ expect(gpg(:gpg => {:key => :foo}).active?).to be_truthy
78
78
  end
79
79
  end
80
80
 
81
81
  describe 'with password' do
82
- it 'is true' do
83
- expect(gpg(gpg: {password: :foo})).to be_active
82
+ it 'should be true' do
83
+ expect(gpg(:gpg => {:password => :foo}).active?).to be_truthy
84
84
  end
85
85
  end
86
86
 
87
87
  describe 'without key & password' do
88
- it 'is false' do
89
- expect(gpg).not_to be_active
88
+ it 'should be false' do
89
+ expect(gpg.active?).to be_falsy
90
90
  end
91
91
  end
92
92
 
93
93
  describe 'with key & password' do
94
- it 'raises RuntimeError' do
94
+ it 'should raise RuntimeError' do
95
95
  lambda {
96
- gpg(gpg: {key: 'foo', password: 'bar'}).send :active?
96
+ gpg(:gpg => {:key => 'foo', :password => 'bar'}).send :active?
97
97
  }.should raise_error(RuntimeError, "can't use both gpg password and pubkey")
98
98
  end
99
99
  end
@@ -102,44 +102,44 @@ describe WebTranslateIt::Safe::Gpg do
102
102
  describe :pipe do
103
103
 
104
104
  describe 'with key' do
105
- def kgpg(extra = {})
106
- gpg({gpg: {key: 'foo', options: 'GPG-OPT'}.merge(extra), options: 'OPT'})
105
+ def kgpg(extra={})
106
+ gpg({:gpg => {:key => 'foo', :options => 'GPG-OPT'}.merge(extra), :options => 'OPT'})
107
107
  end
108
108
 
109
- it 'does not call gpg_password_file' do
109
+ it 'should not call gpg_password_file' do
110
110
  g = kgpg
111
111
  dont_allow(g).gpg_password_file(anything)
112
112
  g.send(:pipe)
113
113
  end
114
114
 
115
- it "uses '-r' and :options" do
115
+ it "should use '-r' and :options" do
116
116
  kgpg.send(:pipe).should == '|gpg GPG-OPT -e -r foo'
117
117
  end
118
118
 
119
- it "uses the 'command' options" do
120
- kgpg(command: 'other-gpg').send(:pipe).should == '|other-gpg GPG-OPT -e -r foo'
119
+ it "should use the 'command' options" do
120
+ kgpg(:command => 'other-gpg').send(:pipe).should == '|other-gpg GPG-OPT -e -r foo'
121
121
  end
122
122
  end
123
123
 
124
124
  describe 'with password' do
125
125
  def pgpg(extra = {})
126
- returning(gpg({gpg: {password: 'bar', options: 'GPG-OPT'}.merge(extra), options: 'OPT'})) do |g|
127
- stub(g).gpg_password_file(anything) { 'pass-file' }
126
+ returning(gpg({:gpg => {:password => 'bar', :options => 'GPG-OPT'}.merge(extra), :options => 'OPT'})) do |g|
127
+ stub(g).gpg_password_file(anything) {'pass-file'}
128
128
  end
129
129
  end
130
130
 
131
- it "uses '--passphrase-file' and :options" do
131
+ it "should use '--passphrase-file' and :options" do
132
132
  pgpg.send(:pipe).should == '|gpg GPG-OPT -c --passphrase-file pass-file'
133
133
  end
134
134
 
135
- it "uses the 'command' options" do
136
- pgpg(command: 'other-gpg').send(:pipe).should == '|other-gpg GPG-OPT -c --passphrase-file pass-file'
135
+ it "should use the 'command' options" do
136
+ pgpg(:command => 'other-gpg').send(:pipe).should == '|other-gpg GPG-OPT -c --passphrase-file pass-file'
137
137
  end
138
138
  end
139
139
  end
140
140
 
141
141
  describe :gpg_password_file do
142
- it 'creates password file' do
142
+ it 'should create password file' do
143
143
  file = gpg.send(:gpg_password_file, 'foo')
144
144
  expect(File.exist?(file)).to be true
145
145
  File.read(file).should == 'foo'
@@ -4,10 +4,10 @@ describe WebTranslateIt::Safe::Gzip do
4
4
 
5
5
  def def_backup
6
6
  {
7
- compressed: false,
8
- command: 'command',
9
- extension: '.foo',
10
- filename: 'qweqwe'
7
+ :compressed => false,
8
+ :command => 'command',
9
+ :extension => '.foo',
10
+ :filename => 'qweqwe'
11
11
  }
12
12
  end
13
13
 
@@ -25,17 +25,17 @@ describe WebTranslateIt::Safe::Gzip do
25
25
  describe 'when not yet compressed' do
26
26
  before(:each) { @gzip = gzip }
27
27
 
28
- it 'adds .gz extension' do
28
+ it 'should add .gz extension' do
29
29
  mock(@backup.extension) << '.gz'
30
30
  @gzip.process
31
31
  end
32
32
 
33
- it 'adds |gzip pipe' do
33
+ it 'should add |gzip pipe' do
34
34
  mock(@backup.command) << '|gzip'
35
35
  @gzip.process
36
36
  end
37
37
 
38
- it 'sets compressed' do
38
+ it 'should set compressed' do
39
39
  mock(@backup).compressed = true
40
40
  @gzip.process
41
41
  end
@@ -43,19 +43,19 @@ describe WebTranslateIt::Safe::Gzip do
43
43
 
44
44
  describe 'when already compressed' do
45
45
 
46
- before(:each) { @gzip = gzip({}, extension: '.foo', command: 'foobar', compressed: true) }
46
+ before(:each) { @gzip = gzip({}, :extension => '.foo', :command => 'foobar', :compressed => true) }
47
47
 
48
- it 'does not touch extension' do
48
+ it 'should not touch extension' do
49
49
  @gzip.process
50
50
  @backup.extension.should == '.foo'
51
51
  end
52
52
 
53
- it 'does not touch command' do
53
+ it 'should not touch command' do
54
54
  @gzip.process
55
55
  @backup.command.should == 'foobar'
56
56
  end
57
57
 
58
- it 'does not touch compressed' do
58
+ it 'should not touch compressed' do
59
59
  @gzip.process
60
60
  @backup.compressed.should == true
61
61
  end
@@ -3,24 +3,24 @@ require 'spec_helper'
3
3
  describe WebTranslateIt::Safe::Local do
4
4
  def def_config
5
5
  {
6
- local: {
7
- path: '/:kind~:id~:timestamp'
6
+ :local => {
7
+ :path => '/:kind~:id~:timestamp'
8
8
  },
9
- keep: {
10
- local: 2
9
+ :keep => {
10
+ :local => 2
11
11
  }
12
12
  }
13
13
  end
14
14
 
15
15
  def def_backup
16
16
  {
17
- kind: 'mysqldump',
18
- id: 'blog',
19
- timestamp: 'NoW',
20
- compressed: true,
21
- command: 'command',
22
- extension: '.foo.gz',
23
- filename: 'qweqwe'
17
+ :kind => 'mysqldump',
18
+ :id => 'blog',
19
+ :timestamp => 'NoW',
20
+ :compressed => true,
21
+ :command => 'command',
22
+ :extension => '.foo.gz',
23
+ :filename => 'qweqwe'
24
24
  }
25
25
  end
26
26
 
@@ -32,19 +32,19 @@ describe WebTranslateIt::Safe::Local do
32
32
  end
33
33
 
34
34
  describe :active? do
35
- it 'is true' do
36
- expect(local).to be_active
35
+ it 'should be true' do
36
+ expect(local.active?).to be_truthy
37
37
  end
38
38
  end
39
39
 
40
40
  describe :path do
41
- it 'raises RuntimeError when no path' do
41
+ it 'should raise RuntimeError when no path' do
42
42
  lambda {
43
43
  local({}).send :path
44
44
  }.should raise_error(RuntimeError, 'missing :local/:path')
45
45
  end
46
46
 
47
- it 'uses local/path' do
47
+ it 'should use local/path' do
48
48
  local.send(:path).should == '/mysqldump~blog~NoW'
49
49
  end
50
50
  end
@@ -53,21 +53,21 @@ describe WebTranslateIt::Safe::Local do
53
53
  before(:each) do
54
54
  @local = local
55
55
  stub(@local).system
56
- stub(@local).full_path { 'file-path' }
56
+ stub(@local).full_path {'file-path'}
57
57
  stub(FileUtils).mkdir_p
58
58
  end
59
59
 
60
- it 'calls system to save the file' do
60
+ it 'should call system to save the file' do
61
61
  mock(@local).system('command>file-path')
62
62
  @local.send(:save)
63
63
  end
64
64
 
65
- it 'creates directory' do
65
+ it 'should create directory' do
66
66
  mock(FileUtils).mkdir_p('/mysqldump~blog~NoW')
67
67
  @local.send(:save)
68
68
  end
69
69
 
70
- it 'sets backup.path' do
70
+ it 'should set backup.path' do
71
71
  mock(@backup).path = 'file-path'
72
72
  @local.send(:save)
73
73
  end
@@ -77,7 +77,7 @@ describe WebTranslateIt::Safe::Local do
77
77
 
78
78
  it 'should not create directory'
79
79
  it 'should not call system'
80
- it 'sets backup.path' do
80
+ it 'should set backup.path' do
81
81
  mock(@backup).path = 'file-path'
82
82
  @local.send(:save)
83
83
  end
@@ -86,21 +86,21 @@ describe WebTranslateIt::Safe::Local do
86
86
 
87
87
  describe :cleanup do
88
88
  before(:each) do
89
- @files = [4, 1, 3, 2].map { |i| "/mysqldump~blog~NoW/qweqwe.#{i}" }
90
- stub(File).file?(anything) { true }
91
- stub(File).size(anything) { 1 }
89
+ @files = [4,1,3,2].map { |i| "/mysqldump~blog~NoW/qweqwe.#{i}" }
90
+ stub(File).file?(anything) {true}
91
+ stub(File).size(anything) {1}
92
92
  stub(File).unlink
93
93
  end
94
94
 
95
- it 'checks [:keep, :local]' do
96
- @local = local(def_config.merge(keep: {}))
95
+ it 'should check [:keep, :local]' do
96
+ @local = local(def_config.merge(:keep => {}))
97
97
  dont_allow(Dir).[]
98
98
  @local.send :cleanup
99
99
  end
100
100
 
101
- it 'deletes extra files' do
101
+ it 'should delete extra files' do
102
102
  @local = local
103
- mock(Dir).[]('/mysqldump~blog~NoW/qweqwe.*') { @files }
103
+ mock(Dir).[]('/mysqldump~blog~NoW/qweqwe.*') {@files}
104
104
  mock(File).unlink('/mysqldump~blog~NoW/qweqwe.1')
105
105
  mock(File).unlink('/mysqldump~blog~NoW/qweqwe.2')
106
106
  @local.send :cleanup
@@ -3,50 +3,50 @@ require 'spec_helper'
3
3
  describe WebTranslateIt::Safe::Mongodump do
4
4
  def def_config
5
5
  {
6
- host: 'prod.example.com',
7
- user: 'testuser',
8
- password: 'p4ssw0rd'
6
+ :host => 'prod.example.com',
7
+ :user => 'testuser',
8
+ :password => 'p4ssw0rd',
9
9
  }
10
10
  end
11
-
11
+
12
12
  def mongodump(id = :foo, config = def_config)
13
13
  WebTranslateIt::Safe::Mongodump.new(id, WebTranslateIt::Safe::Config::Node.new(nil, config))
14
14
  end
15
-
15
+
16
16
  before(:each) do
17
- stub(Time).now.stub!.strftime { 'NOW' }
17
+ stub(Time).now.stub!.strftime {'NOW'}
18
18
  @output_folder = File.join(WebTranslateIt::Safe::TmpFile.tmproot, 'mongodump')
19
19
  end
20
-
20
+
21
21
  after(:each) { WebTranslateIt::Safe::TmpFile.cleanup }
22
-
22
+
23
23
  describe :backup do
24
24
  before(:each) do
25
25
  @mongo = mongodump
26
26
  end
27
-
27
+
28
28
  {
29
- id: 'foo',
30
- kind: 'mongodump',
31
- extension: '.tar',
32
- filename: 'mongodump-foo.NOW'
29
+ :id => 'foo',
30
+ :kind => 'mongodump',
31
+ :extension => '.tar',
32
+ :filename => 'mongodump-foo.NOW'
33
33
  }.each do |k, v|
34
- it "sets #{k} to #{v}" do
34
+ it "should set #{k} to #{v}" do
35
35
  @mongo.backup.send(k).should == v
36
36
  end
37
37
  end
38
-
39
- it 'sets the command' do
38
+
39
+ it 'should set the command' do
40
40
  @mongo.backup.send(:command).should == "mongodump -q \"{xxxx : { \\$ne : 0 } }\" --db foo --host prod.example.com -u testuser -p p4ssw0rd --out #{@output_folder} && cd #{@output_folder} && tar cf - ."
41
41
  end
42
-
42
+
43
43
  {
44
- host: '--host ',
45
- user: '-u ',
46
- password: '-p '
47
- }.each do |key, v|
48
- it "does not add #{key} to command if it is not present" do
49
- @mongo = mongodump(:foo, def_config.reject! { |k, _v| k == key })
44
+ :host => '--host ',
45
+ :user => '-u ',
46
+ :password => '-p '
47
+ }.each do |key, v|
48
+ it "should not add #{key} to command if it is not present" do
49
+ @mongo = mongodump(:foo, def_config.reject! {|k,v| k == key})
50
50
  @mongo.backup.send(:command).should_not =~ /#{v}/
51
51
  end
52
52
  end
@@ -4,13 +4,13 @@ describe WebTranslateIt::Safe::Mysqldump do
4
4
 
5
5
  def def_config(extra = {})
6
6
  {
7
- options: 'OPTS',
8
- user: 'User',
9
- password: 'pwd',
10
- host: 'localhost',
11
- port: 7777,
12
- socket: 'socket',
13
- skip_tables: [:bar, :baz]
7
+ :options => 'OPTS',
8
+ :user => 'User',
9
+ :password => 'pwd',
10
+ :host => 'localhost',
11
+ :port => 7777,
12
+ :socket => 'socket',
13
+ :skip_tables => [:bar, :baz]
14
14
  }.merge(extra)
15
15
  end
16
16
 
@@ -19,7 +19,7 @@ describe WebTranslateIt::Safe::Mysqldump do
19
19
  end
20
20
 
21
21
  before(:each) do
22
- stub(Time).now.stub!.strftime { 'NOW' }
22
+ stub(Time).now.stub!.strftime {'NOW'}
23
23
  end
24
24
 
25
25
  after(:each) { WebTranslateIt::Safe::TmpFile.cleanup }
@@ -27,17 +27,17 @@ describe WebTranslateIt::Safe::Mysqldump do
27
27
  describe :backup do
28
28
  before(:each) do
29
29
  @mysql = mysqldump
30
- stub(@mysql).mysql_password_file { '/tmp/pwd' }
30
+ stub(@mysql).mysql_password_file {'/tmp/pwd'}
31
31
  end
32
32
 
33
33
  {
34
- id: 'foo',
35
- kind: 'mysqldump',
36
- extension: '.sql',
37
- filename: 'mysqldump-foo.NOW',
38
- command: 'mysqldump --defaults-extra-file=/tmp/pwd OPTS --ignore-table=foo.bar --ignore-table=foo.baz foo'
34
+ :id => 'foo',
35
+ :kind => 'mysqldump',
36
+ :extension => '.sql',
37
+ :filename => 'mysqldump-foo.NOW',
38
+ :command => 'mysqldump --defaults-extra-file=/tmp/pwd OPTS --ignore-table=foo.bar --ignore-table=foo.baz foo',
39
39
  }.each do |k, v|
40
- it "sets #{k} to #{v}" do
40
+ it "should set #{k} to #{v}" do
41
41
  @mysql.backup.send(k).should == v
42
42
  end
43
43
  end
@@ -45,38 +45,38 @@ describe WebTranslateIt::Safe::Mysqldump do
45
45
  end
46
46
 
47
47
  describe :mysql_skip_tables do
48
- it 'returns nil if no skip_tables' do
48
+ it 'should return nil if no skip_tables' do
49
49
  config = def_config.dup
50
50
  config.delete(:skip_tables)
51
51
  m = mysqldump(:foo, WebTranslateIt::Safe::Config::Node.new(nil, config))
52
- stub(m).timestamp { 'NOW' }
52
+ stub(m).timestamp {'NOW'}
53
53
  m.send(:mysql_skip_tables).should be_nil
54
54
  m.backup.command.should_not match(/ignore-table/)
55
55
  end
56
56
 
57
- it "returns '' if skip_tables empty" do
57
+ it "should return '' if skip_tables empty" do
58
58
  config = def_config.dup
59
59
  config[:skip_tables] = []
60
60
  m = mysqldump(:foo, WebTranslateIt::Safe::Config::Node.new(nil, config))
61
- stub(m).timestamp { 'NOW' }
62
- m.send(:mysql_skip_tables).should
61
+ stub(m).timestamp {'NOW'}
62
+ m.send(:mysql_skip_tables).should == ''
63
63
  m.backup.command.should_not match(/ignore-table/)
64
64
  end
65
65
 
66
66
  end
67
67
 
68
68
  describe :mysql_password_file do
69
- it 'creates passwords file with quoted values' do
70
- m = mysqldump(:foo, def_config(password: '#qwe"asd\'zxc'))
69
+ it 'should create passwords file with quoted values' do
70
+ m = mysqldump(:foo, def_config(:password => '#qwe"asd\'zxc'))
71
71
  file = m.send(:mysql_password_file)
72
- File.exist?(file).should
73
- File.read(file).should == <<~PWD
74
- [mysqldump]
75
- user = "User"
76
- password = "#qwe\\"asd'zxc"
77
- socket = "socket"
78
- host = "localhost"
79
- port = 7777
72
+ File.exist?(file).should == true
73
+ File.read(file).should == <<-PWD
74
+ [mysqldump]
75
+ user = "User"
76
+ password = "#qwe\\"asd'zxc"
77
+ socket = "socket"
78
+ host = "localhost"
79
+ port = 7777
80
80
  PWD
81
81
  end
82
82
  end
@@ -4,12 +4,12 @@ describe WebTranslateIt::Safe::Pgdump do
4
4
 
5
5
  def def_config
6
6
  {
7
- options: 'OPTS',
8
- user: 'User',
9
- password: 'pwd',
10
- host: 'localhost',
11
- port: 7777,
12
- skip_tables: [:bar, :baz]
7
+ :options => 'OPTS',
8
+ :user => 'User',
9
+ :password => 'pwd',
10
+ :host => 'localhost',
11
+ :port => 7777,
12
+ :skip_tables => [:bar, :baz]
13
13
  }
14
14
  end
15
15
 
@@ -18,7 +18,7 @@ describe WebTranslateIt::Safe::Pgdump do
18
18
  end
19
19
 
20
20
  before(:each) do
21
- stub(Time).now.stub!.strftime { 'NOW' }
21
+ stub(Time).now.stub!.strftime {'NOW'}
22
22
  end
23
23
 
24
24
  after(:each) { WebTranslateIt::Safe::TmpFile.cleanup }
@@ -29,13 +29,13 @@ describe WebTranslateIt::Safe::Pgdump do
29
29
  end
30
30
 
31
31
  {
32
- id: 'foo',
33
- kind: 'pgdump',
34
- extension: '.sql',
35
- filename: 'pgdump-foo.NOW',
36
- command: "pg_dump OPTS --username='User' --host='localhost' --port='7777' foo"
32
+ :id => 'foo',
33
+ :kind => 'pgdump',
34
+ :extension => '.sql',
35
+ :filename => 'pgdump-foo.NOW',
36
+ :command => "pg_dump OPTS --username='User' --host='localhost' --port='7777' foo",
37
37
  }.each do |k, v|
38
- it "sets #{k} to #{v}" do
38
+ it "should set #{k} to #{v}" do
39
39
  @pg.backup.send(k).should == v
40
40
  end
41
41
  end
@@ -165,4 +165,4 @@ describe WebTranslateIt::Safe::S3 do
165
165
  @s3.send(:save)
166
166
  end
167
167
  end
168
- end
168
+ end
@@ -3,8 +3,8 @@ require 'spec_helper'
3
3
  describe WebTranslateIt::Safe::Svndump do
4
4
  def def_config
5
5
  {
6
- options: 'OPTS',
7
- repo_path: 'bar/baz'
6
+ :options => 'OPTS',
7
+ :repo_path => 'bar/baz'
8
8
  }
9
9
  end
10
10
 
@@ -13,7 +13,7 @@ describe WebTranslateIt::Safe::Svndump do
13
13
  end
14
14
 
15
15
  before(:each) do
16
- stub(Time).now.stub!.strftime { 'NOW' }
16
+ stub(Time).now.stub!.strftime {'NOW'}
17
17
  end
18
18
 
19
19
  after(:each) { WebTranslateIt::Safe::TmpFile.cleanup }
@@ -24,13 +24,13 @@ describe WebTranslateIt::Safe::Svndump do
24
24
  end
25
25
 
26
26
  {
27
- id: 'foo',
28
- kind: 'svndump',
29
- extension: '.svn',
30
- filename: 'svndump-foo.NOW',
31
- command: 'svnadmin dump OPTS bar/baz'
27
+ :id => 'foo',
28
+ :kind => 'svndump',
29
+ :extension => '.svn',
30
+ :filename => 'svndump-foo.NOW',
31
+ :command => 'svnadmin dump OPTS bar/baz',
32
32
  }.each do |k, v|
33
- it "sets #{k} to #{v}" do
33
+ it "should set #{k} to #{v}" do
34
34
  @svn.backup.send(k).should == v
35
35
  end
36
36
  end
@@ -1,4 +1,3 @@
1
- require 'English'
2
1
  lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'webtranslateit/safe/version'
@@ -9,18 +8,18 @@ Gem::Specification.new do |spec|
9
8
  spec.authors = ['Edouard Briere', 'Vitaly Kushner']
10
9
  spec.email = ['support@webtranslateit.com']
11
10
  spec.required_ruby_version = '>= 3.2'
12
- spec.description = <<~DESC
13
- WebTranslateIt-Safe is a simple tool to backup databases (MySQL and PostgreSQL), Subversion repositories (with svndump) and just files.
14
- Backups can be stored locally or remotely and can be enctypted.
15
- Remote storage is supported on Amazon S3, Rackspace Cloud Files, or just plain FTP/SFTP.
11
+ spec.description = <<-DESC
12
+ WebTranslateIt-Safe is a simple tool to backup databases (MySQL and PostgreSQL), Subversion repositories (with svndump) and just files.
13
+ Backups can be stored locally or remotely and can be enctypted.
14
+ Remote storage is supported on Amazon S3, Rackspace Cloud Files, or just plain FTP/SFTP.
16
15
  DESC
17
16
  spec.summary = 'Backup filesystem and databases (MySQL and PostgreSQL) locally or to a remote server/service (with encryption)'
18
- spec.homepage = 'https://github.com/webtranslateit/safe'
17
+ spec.homepage = 'http://github.com/webtranslateit/safe'
19
18
  spec.license = 'MIT'
20
19
 
21
20
  spec.default_executable = 'webtranslateit-safe'
22
21
 
23
- spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
22
+ spec.files = `git ls-files`.split($/)
24
23
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
25
24
  spec.require_paths = ['lib']
26
25