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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc8d8dec60fe04598e9dd5bea8528f5299a7cbb7ee0f0432c3b6d46488917edf
4
- data.tar.gz: '029dffccca2865524f208d28f2ebe2f63b2de465e0a5f08de93c597156fd48a9'
3
+ metadata.gz: 5a538d62022eefe0216aeebb5a145a9e58da17fec71b6e5568a05e6e3f0e5234
4
+ data.tar.gz: c4998bacaa329ddbccf59e97ffacc1f70f6c9e0e771a5684bce9b1231dbf1539
5
5
  SHA512:
6
- metadata.gz: 9c393b76dddd9978adf5dfc77cfb25f3c14bfb9b1aca0767228b8b4c70fdf11206f4a35c9e0f5098b1c7ba1e3b113dc8f51de3ad14b48d39fe1dff8dd21309f1
7
- data.tar.gz: 054605d2b4f91e2c0fdbd0518614b81a9f04f0ba378f0d92c5aba28c59456ae88c40dfb156579295c10130c248fc314197bd03398f18435cd1e0596696f444f2
6
+ metadata.gz: aa1a042fa12c461a65f66757ecc1966976672947d88de8e885141e128eea04c2d8cbdea9f833e3da5c52b28a28d24047e17142f12af47e204f9317ae04bd571b
7
+ data.tar.gz: 82467662b3415937881e00f85396783e096d6c3643a6bf5a469e9cae931887087edc6ba54795c1296097342f03c896a69e6223fe0697f6e9a3760109033c90e9
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- qdumpfs (0.8.0)
4
+ qdumpfs (0.9.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- minitest (5.14.2)
10
- rake (13.0.1)
9
+ minitest (5.14.3)
10
+ rake (13.0.3)
11
11
 
12
12
  PLATFORMS
13
13
  ruby
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
- # p e.message
68
- # p e.backtrace
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 Errno::ENOENT, Errno::EACCES => e
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 Errno::ENOENT, Errno::EACCES => e
211
+ rescue => e
209
212
  wprintf("%s: %s", s, e.message)
210
213
  next
211
214
  end
@@ -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 Errno::ENOENT, Errno::EACCES, Errno::ENOTDIR, Errno::ELOOP, Errno::ENAMETOOLONG => e
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 Errno::ENOENT, Errno::EACCES, Errno::ENOTDIR, Errno::ELOOP, Errno::ENAMETOOLONG => e
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
- File.open(src, 'rb') {|r|
111
- File.open(dest, 'wb') {|w|
112
- block_size = (r.stat.blksize or 8192)
113
- begin
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
- rescue EOFError => e
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
@@ -1,4 +1,4 @@
1
1
  module Qdumpfs
2
- VERSION = "0.8.0"
2
+ VERSION = "0.9.0"
3
3
  end
4
-
4
+
data/run_qdumpfs.sh CHANGED
@@ -1,4 +1,4 @@
1
1
  #!/bin/sh
2
2
 
3
3
  curdir=$(dirname $0)
4
- bundle exec ruby $curdir/exe/qdumpfs $*
4
+ bundle exec ruby $curdir/exe/qdumpfs "$@"
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.8.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-22 00:00:00.000000000 Z
11
+ date: 2021-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler