qdumpfs 0.8.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -3
- data/lib/qdumpfs.rb +7 -4
- data/lib/qdumpfs/option.rb +3 -1
- data/lib/qdumpfs/util.rb +10 -11
- data/lib/qdumpfs/version.rb +2 -2
- data/run_qdumpfs.sh +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a538d62022eefe0216aeebb5a145a9e58da17fec71b6e5568a05e6e3f0e5234
|
4
|
+
data.tar.gz: c4998bacaa329ddbccf59e97ffacc1f70f6c9e0e771a5684bce9b1231dbf1539
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aa1a042fa12c461a65f66757ecc1966976672947d88de8e885141e128eea04c2d8cbdea9f833e3da5c52b28a28d24047e17142f12af47e204f9317ae04bd571b
|
7
|
+
data.tar.gz: 82467662b3415937881e00f85396783e096d6c3643a6bf5a469e9cae931887087edc6ba54795c1296097342f03c896a69e6223fe0697f6e9a3760109033c90e9
|
data/Gemfile.lock
CHANGED
data/lib/qdumpfs.rb
CHANGED
@@ -51,6 +51,7 @@ module Qdumpfs
|
|
51
51
|
opt.on('--backup-at=YYYYMMDD', 'backup at YYYY/MM/DD') {|v|
|
52
52
|
opts[:backup_at] = Date.parse(v)
|
53
53
|
}
|
54
|
+
opt.on('-d', '--debug', 'debug mode') {|v| opts[:d] = v }
|
54
55
|
opt.parse!(argv)
|
55
56
|
option = Option.new(opts, argv)
|
56
57
|
if opts[:v]
|
@@ -64,8 +65,10 @@ module Qdumpfs
|
|
64
65
|
command = Command.new(option)
|
65
66
|
command.run
|
66
67
|
rescue => e
|
67
|
-
|
68
|
-
|
68
|
+
if option.debug
|
69
|
+
p e.message
|
70
|
+
p e.backtrace
|
71
|
+
end
|
69
72
|
puts opt.help
|
70
73
|
exit
|
71
74
|
end
|
@@ -170,7 +173,7 @@ module Qdumpfs
|
|
170
173
|
# ファイルのアップデート
|
171
174
|
update_file(s, l, t)
|
172
175
|
dirs[t] = File.stat(s) if File.ftype(s) == "directory"
|
173
|
-
rescue
|
176
|
+
rescue => e
|
174
177
|
wprintf("%s: %s", src, e.message)
|
175
178
|
next
|
176
179
|
end
|
@@ -205,7 +208,7 @@ module Qdumpfs
|
|
205
208
|
end
|
206
209
|
chown_if_root(type, s, t)
|
207
210
|
dirs[t] = File.stat(s) if File.ftype(s) == "directory"
|
208
|
-
rescue
|
211
|
+
rescue => e
|
209
212
|
wprintf("%s: %s", s, e.message)
|
210
213
|
next
|
211
214
|
end
|
data/lib/qdumpfs/option.rb
CHANGED
@@ -141,15 +141,17 @@ module Qdumpfs
|
|
141
141
|
@keep_day = $1.to_i if keep =~ /(\d+)D/
|
142
142
|
@delete_from = @opts[:delete_from]
|
143
143
|
@delete_to = @opts[:delete_to]
|
144
|
-
@delete_dirs = @opts[:delete_dirs]
|
144
|
+
@delete_dirs = @opts[:delete_dirs] || []
|
145
145
|
@backup_at = @opts[:backup_at]
|
146
146
|
@today = Date.today
|
147
|
+
@debug = @opts[:d]
|
147
148
|
end
|
148
149
|
attr_reader :dirs, :src, :dst, :cmd
|
149
150
|
attr_reader :keep_year, :keep_month, :keep_week, :keep_day
|
150
151
|
attr_reader :logdir, :logpath, :verifypath
|
151
152
|
attr_reader :logger, :matcher, :reporter, :interval_proc
|
152
153
|
attr_reader :delete_from, :delete_to, :delete_dirs, :backup_at
|
154
|
+
attr_reader :debug
|
153
155
|
|
154
156
|
def report(type, filename)
|
155
157
|
if @opts[:v]
|
data/lib/qdumpfs/util.rb
CHANGED
@@ -73,14 +73,14 @@ module QdumpfsFind
|
|
73
73
|
yield file.dup.taint
|
74
74
|
begin
|
75
75
|
s = File.lstat(file)
|
76
|
-
rescue
|
76
|
+
rescue => e
|
77
77
|
logger.print("File.lstat path=#{file} error=#{e.message}")
|
78
78
|
next
|
79
79
|
end
|
80
80
|
if s.directory? then
|
81
81
|
begin
|
82
82
|
fs = Dir.entries(file, :encoding=>'UTF-8')
|
83
|
-
rescue
|
83
|
+
rescue => e
|
84
84
|
logger.print("Dir.entries path=#{file} error=#{e.message}")
|
85
85
|
next
|
86
86
|
end
|
@@ -107,23 +107,22 @@ module QdumpfsUtils
|
|
107
107
|
|
108
108
|
# We don't use File.copy for calling @interval_proc.
|
109
109
|
def copy_file(src, dest)
|
110
|
-
|
111
|
-
File.open(
|
112
|
-
|
113
|
-
|
110
|
+
begin
|
111
|
+
File.open(src, 'rb') {|r|
|
112
|
+
File.open(dest, 'wb') {|w|
|
113
|
+
block_size = (r.stat.blksize or 8192)
|
114
114
|
i = 0
|
115
115
|
while true
|
116
116
|
block = r.sysread(block_size)
|
117
117
|
w.syswrite(block)
|
118
118
|
i += 1
|
119
119
|
@written_bytes += block.size
|
120
|
-
# @interval_proc.call if i % 10 == 0
|
121
120
|
end
|
122
|
-
|
123
|
-
# puts e.message, e.backtrace
|
124
|
-
end
|
121
|
+
}
|
125
122
|
}
|
126
|
-
|
123
|
+
rescue EOFError => e
|
124
|
+
# puts e.message, e.backtrace
|
125
|
+
end
|
127
126
|
unless FileTest.file?(dest)
|
128
127
|
raise "copy_file fails #{dest}"
|
129
128
|
end
|
data/lib/qdumpfs/version.rb
CHANGED
data/run_qdumpfs.sh
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: qdumpfs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- src
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-02-
|
11
|
+
date: 2021-02-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|