six-rsync 0.3.7 → 0.3.8
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +1 -1
- data/lib/six/rsync/lib.rb +10 -62
- data/lib/six/rsync.rb +1 -1
- metadata +20 -9
data/Rakefile
CHANGED
data/lib/six/rsync/lib.rb
CHANGED
@@ -127,6 +127,9 @@ module Six
|
|
127
127
|
raise RsyncError
|
128
128
|
end
|
129
129
|
|
130
|
+
load_repos(:local)
|
131
|
+
load_repos(:remote)
|
132
|
+
|
130
133
|
hosts = config[:hosts].clone
|
131
134
|
|
132
135
|
# FIXME: This does not work when not forced, as host is sampled in comparesums :)
|
@@ -265,29 +268,6 @@ module Six
|
|
265
268
|
end
|
266
269
|
end
|
267
270
|
|
268
|
-
=begin
|
269
|
-
i = 0
|
270
|
-
ar.each do |file|
|
271
|
-
i += 1
|
272
|
-
unless file[/\.gz\Z/]
|
273
|
-
relative = file.clone
|
274
|
-
relative.gsub!(@rsync_work_dir, '')
|
275
|
-
relative.gsub!(/\A[\\|\/]/, '')
|
276
|
-
#checksum = md5(file)
|
277
|
-
if @repos_local[:wd][relative] != @repos_remote[:wd][relative]
|
278
|
-
relative[/(.*)\/(.*)/]
|
279
|
-
folder = $1
|
280
|
-
change = true
|
281
|
-
@logger.info "Packing #{i}/#{ar.size}: #{relative}"
|
282
|
-
gzip(file)
|
283
|
-
#@repos_local[:wd][relative] = checksum
|
284
|
-
@repos_local[:pack]["#{relative}.gz"] = md5("#{file}.gz")
|
285
|
-
FileUtils.mkdir_p pack_path(folder) if folder
|
286
|
-
FileUtils.mv("#{file}.gz", pack_path("#{relative}.gz"))
|
287
|
-
end
|
288
|
-
end
|
289
|
-
end
|
290
|
-
=end
|
291
271
|
# Deleted files
|
292
272
|
@logger.info "Checking for deleted files..."
|
293
273
|
|
@@ -307,36 +287,6 @@ module Six
|
|
307
287
|
end
|
308
288
|
end
|
309
289
|
|
310
|
-
=begin
|
311
|
-
p @repos_local[:wd]
|
312
|
-
ar2 = Dir[File.join(@rsync_work_dir, '/.rsync/.pack/**/*')]
|
313
|
-
i = 0
|
314
|
-
ar2.each do |file|
|
315
|
-
i += 1
|
316
|
-
if file[/\.gz\Z/]
|
317
|
-
relative = file.clone
|
318
|
-
relative.gsub!(@rsync_work_dir, '')
|
319
|
-
relative.gsub!(/\A[\\|\/]\.rsync[\\|\/]\.pack[\\|\/]/, '')
|
320
|
-
local = relative.clone
|
321
|
-
local.gsub!(/\.gz\Z/, '')
|
322
|
-
p file
|
323
|
-
p local
|
324
|
-
p @repos_local[:wd][local]
|
325
|
-
puts
|
326
|
-
if @repos_local[:wd][local].nil?
|
327
|
-
relative[/(.*)\/(.*)/]
|
328
|
-
folder = $1
|
329
|
-
change = true
|
330
|
-
@logger.info "Deleting #{i}/#{ar2.size}: #{relative}"
|
331
|
-
@repos_local[:wd].delete local
|
332
|
-
@repos_local[:pack].delete relative
|
333
|
-
FileUtils.rm_f(file)
|
334
|
-
end
|
335
|
-
end
|
336
|
-
end
|
337
|
-
=end
|
338
|
-
|
339
|
-
#gets
|
340
290
|
if change
|
341
291
|
@logger.info "Changes found!"
|
342
292
|
cmd = ''
|
@@ -358,6 +308,7 @@ module Six
|
|
358
308
|
@verbose = verbose
|
359
309
|
|
360
310
|
load_repos(:remote)
|
311
|
+
|
361
312
|
if @repos_local[:version] < @repos_remote[:version] # && !force
|
362
313
|
@logger.warn "WARNING, version on server is NEWER, aborting!"
|
363
314
|
raise RsyncError
|
@@ -524,6 +475,7 @@ module Six
|
|
524
475
|
@logger.info "Trying #{host}"
|
525
476
|
|
526
477
|
begin
|
478
|
+
FileUtils.cp(pack_path(".repository.yml"), rsync_path(".repository-pack.yml"))
|
527
479
|
fetch_file(".pack/.repository.yml", host)
|
528
480
|
|
529
481
|
load_repos(:remote)
|
@@ -531,16 +483,19 @@ module Six
|
|
531
483
|
|
532
484
|
if @repos_local[:version] > @repos_remote[:version] # && !force
|
533
485
|
@logger.warn "WARNING, version on server is OLDER, aborting!"
|
486
|
+
FileUtils.cp(rsync_path(".repository-pack.yml"), pack_path(".repository.yml"))
|
534
487
|
raise RsyncError
|
535
488
|
end
|
536
489
|
done = true
|
537
490
|
rescue
|
538
491
|
@logger.debug "#{$!}"
|
492
|
+
ensure
|
493
|
+
FileUtils.rm(rsync_path(".repository-pack.yml"))
|
539
494
|
end
|
540
495
|
end
|
541
496
|
@verbose = verbose
|
542
497
|
end
|
543
|
-
if done
|
498
|
+
if done && online
|
544
499
|
# TODO: Don't do actions when not online
|
545
500
|
@logger.info "Verifying Packed files..."
|
546
501
|
compare_set(:pack, host)
|
@@ -666,14 +621,7 @@ module Six
|
|
666
621
|
when :local
|
667
622
|
File.open(rsync_path('.repository.yml')) { |file| config = YAML::load(file) }
|
668
623
|
when :remote
|
669
|
-
|
670
|
-
File.open(pack_path('.repository.yml')) { |file| config = YAML::load(file) }
|
671
|
-
else
|
672
|
-
# Deprecated
|
673
|
-
config[:wd] = File.open(File.join(@rsync_work_dir, '.sums.yml')) { |file| YAML::load(file) }
|
674
|
-
config[:pack] = File.open(pack_path('.sums.yml')) { |file| YAML::load(file) }
|
675
|
-
config[:version] = File.open(pack_path('.version')) { |file| file.read.to_i }
|
676
|
-
end
|
624
|
+
File.open(pack_path('.repository.yml')) { |file| config = YAML::load(file) }
|
677
625
|
end
|
678
626
|
|
679
627
|
[:wd, :pack].each do |t|
|
data/lib/six/rsync.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: six-rsync
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 3
|
8
|
+
- 8
|
9
|
+
version: 0.3.8
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- Sickboy
|
@@ -9,19 +14,23 @@ autorequire:
|
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
16
|
|
12
|
-
date: 2010-
|
17
|
+
date: 2010-04-12 00:00:00 +02:00
|
13
18
|
default_executable:
|
14
19
|
dependencies:
|
15
20
|
- !ruby/object:Gem::Dependency
|
16
21
|
name: log4r
|
17
|
-
|
18
|
-
|
19
|
-
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
20
24
|
requirements:
|
21
25
|
- - ">="
|
22
26
|
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 1
|
29
|
+
- 1
|
30
|
+
- 2
|
23
31
|
version: 1.1.2
|
24
|
-
|
32
|
+
type: :runtime
|
33
|
+
version_requirements: *id001
|
25
34
|
description: Your summary here
|
26
35
|
email: sb@dev-heaven.net
|
27
36
|
executables: []
|
@@ -56,18 +65,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
56
65
|
requirements:
|
57
66
|
- - ">="
|
58
67
|
- !ruby/object:Gem::Version
|
68
|
+
segments:
|
69
|
+
- 0
|
59
70
|
version: "0"
|
60
|
-
version:
|
61
71
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
62
72
|
requirements:
|
63
73
|
- - ">="
|
64
74
|
- !ruby/object:Gem::Version
|
75
|
+
segments:
|
76
|
+
- 0
|
65
77
|
version: "0"
|
66
|
-
version:
|
67
78
|
requirements: []
|
68
79
|
|
69
80
|
rubyforge_project:
|
70
|
-
rubygems_version: 1.3.
|
81
|
+
rubygems_version: 1.3.6
|
71
82
|
signing_key:
|
72
83
|
specification_version: 3
|
73
84
|
summary: Your summary here
|