rbrsync 0.0.5 → 0.0.8
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/lib/rbrsync/rbrsync.rb +7 -8
- data/lib/rbrsync/version.rb +2 -2
- data/spec/rbrsync_spec.rb +17 -6
- metadata +2 -2
data/lib/rbrsync/rbrsync.rb
CHANGED
@@ -230,7 +230,10 @@ module RbRsync
|
|
230
230
|
def from
|
231
231
|
@from ||= build_path(from_user, from_host, from_path)
|
232
232
|
end
|
233
|
-
|
233
|
+
|
234
|
+
def from= (from)
|
235
|
+
@from = [from].flatten unless from.nil?
|
236
|
+
end
|
234
237
|
|
235
238
|
def to
|
236
239
|
@to ||= build_path(to_user, to_host, to_path)
|
@@ -260,7 +263,7 @@ module RbRsync
|
|
260
263
|
|
261
264
|
argv.concat(options_to_argv(@options))
|
262
265
|
|
263
|
-
argv
|
266
|
+
argv.concat(from)
|
264
267
|
argv << to
|
265
268
|
|
266
269
|
argv
|
@@ -281,7 +284,7 @@ module RbRsync
|
|
281
284
|
else
|
282
285
|
[val].flatten.each do |val|
|
283
286
|
argv << "-#{key}"
|
284
|
-
argv << "
|
287
|
+
argv << "#{val}"
|
285
288
|
end
|
286
289
|
end
|
287
290
|
else
|
@@ -291,7 +294,7 @@ module RbRsync
|
|
291
294
|
# ignore
|
292
295
|
else
|
293
296
|
[val].flatten.each do |val|
|
294
|
-
argv << "--#{key.to_s.tr('_', '-')}
|
297
|
+
argv << "--#{key.to_s.tr('_', '-')}=#{val}"
|
295
298
|
end
|
296
299
|
|
297
300
|
end
|
@@ -309,9 +312,5 @@ module RbRsync
|
|
309
312
|
nil
|
310
313
|
end
|
311
314
|
end
|
312
|
-
|
313
|
-
def shell_escape(str)
|
314
|
-
str.to_s.gsub("'", "'\\\\''")
|
315
|
-
end
|
316
315
|
end
|
317
316
|
end
|
data/lib/rbrsync/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module RbRsync
|
2
|
-
VERSION = '0.0.
|
3
|
-
end
|
2
|
+
VERSION = '0.0.8'
|
3
|
+
end
|
data/spec/rbrsync_spec.rb
CHANGED
@@ -140,7 +140,14 @@ describe RbRsync do
|
|
140
140
|
|
141
141
|
@rsync.from = "newuser@newhost.com:/home/newuser"
|
142
142
|
|
143
|
-
@rsync.from.should ==
|
143
|
+
@rsync.from.should == %w(newuser@newhost.com:/home/newuser)
|
144
|
+
end
|
145
|
+
|
146
|
+
it "should treat multiple sources as such" do
|
147
|
+
@rsync.from = %w(/var/apps /home/user /etc/nginx)
|
148
|
+
@rsync.to = "newuser@newhost.com:/backups"
|
149
|
+
|
150
|
+
@rsync.from.should == %w(/var/apps /home/user /etc/nginx)
|
144
151
|
end
|
145
152
|
|
146
153
|
describe "command method" do
|
@@ -185,29 +192,33 @@ describe RbRsync do
|
|
185
192
|
@rsync.from = "/home/me/"
|
186
193
|
@rsync.to = "user@host.com:/home/user"
|
187
194
|
|
188
|
-
command_should_have_only "/home/me/", "user@host.com:/home/user", "--exclude
|
195
|
+
command_should_have_only "/home/me/", "user@host.com:/home/user", "--exclude=*~", "--archive"
|
189
196
|
end
|
190
197
|
it "should set --exclude twice when exclude= is called with an array" do
|
191
198
|
@rsync.exclude = ['*~', '/*']
|
192
199
|
@rsync.from = "/home/me/"
|
193
200
|
@rsync.to = "user@host.com:/home/user"
|
194
201
|
|
195
|
-
command_should_have_only "/home/me/", "user@host.com:/home/user", "--exclude
|
202
|
+
command_should_have_only "/home/me/", "user@host.com:/home/user", "--exclude=*~", "--exclude=/*"
|
196
203
|
end
|
197
204
|
|
198
|
-
it "should correctly
|
205
|
+
it "should correctly handle quotes in arguments correctly" do
|
206
|
+
@rsync.dry_run!
|
199
207
|
@rsync.log_file = 'rsync.log'
|
200
208
|
@rsync.log_file_format = "'\\'%t '%f' with %b ''"
|
201
209
|
@rsync.from = "/home"
|
202
210
|
@rsync.to = "/home/user"
|
203
|
-
|
211
|
+
status = @rsync.go!
|
212
|
+
status.err.should be_empty
|
213
|
+
command_should_have_only "/home", "/home/user", "--dry-run", "--log-file=rsync.log", %[--log-file-format='\\'%t '%f' with %b '']
|
214
|
+
|
204
215
|
end
|
205
216
|
end
|
206
217
|
|
207
218
|
describe "constructor" do
|
208
219
|
it "should take source and destination parameters" do
|
209
220
|
@rsync = RbRsync::RbRsync.new '/home/user', 'user@host.com:/home/user'
|
210
|
-
@rsync.from.should ==
|
221
|
+
@rsync.from.should == %w(/home/user)
|
211
222
|
@rsync.to.should == 'user@host.com:/home/user'
|
212
223
|
end
|
213
224
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbrsync
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-04-
|
13
|
+
date: 2013-04-11 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: posix-spawn
|