qdumpfs 0.8.0 → 0.9.0
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.
- 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
|