defoker 0.0.7 → 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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +22 -0
  3. data/bin/defoker +58 -11
  4. data/lib/defoker/version.rb +1 -1
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7a5f9afbcf61ccde102b125beaac16433ce3c251
4
- data.tar.gz: 889fa48fe18e9c56fb152120dce25fd30c7254e0
3
+ metadata.gz: 2096e549b7fb1fa21834c21184f2055ffdfc1075
4
+ data.tar.gz: 0567dfaf47dadde884d5d4758d88f799e8bf3316
5
5
  SHA512:
6
- metadata.gz: 64da091ba8e210d74c2a063728f8d021b887ac7e2cb05c7930b3944bfb020496b6088dc63cf15eb430d944ff75d598b7d0001cf846301201a79954772182fccf
7
- data.tar.gz: d01a268dc1a16947af3a0f777828213e2e345c7d0bf35ac082422f30dfb19ef3da091d3e6cba4ae88b95b2b734012061c9ec8b714fa1341b5bf853d8d92d9833
6
+ metadata.gz: c5d951f24576c64175d00780db60f511fc71b364595c5600a3b9f5ac48963a46dd5f3527ba14cf8e1541c53ed2024ee53486732c7a1f3c57b70a9f4300e7a90d
7
+ data.tar.gz: acc85b6b64b8b2399f914421358a37fb0ead474a0eea12dba7882a705fe8c27936baffab480bae56126c47278c764124cd4cb6251cea7556f717d226636ca9d1
data/README.md CHANGED
@@ -454,7 +454,29 @@ $ defoker mv_year
454
454
  ┗ invalid_folder
455
455
  ~~~
456
456
 
457
+ ### gem_info
458
+ show gem information.
459
+
460
+ ~~~bash
461
+ $ defoker gem_info
462
+ ____ __ _
463
+ | _ \ ___ / _| ___ | | _____ _ __
464
+ | | | |/ _ \ |_ / _ \| |/ / _ \ '__|
465
+ | |_| | __/ _| (_) | < __/ |
466
+ |____/ \___|_| \___/|_|\_\___|_|
467
+
468
+ [gem name]
469
+ defoker
470
+ [version]
471
+ 0.0.8
472
+ [document url]
473
+ https://github.com/tbpgr/defoker
474
+ [RubyGems url]
475
+ http://rubygems.org/gems/defoker
476
+ ~~~
477
+
457
478
  ## History
479
+ * version 0.0.8 : Add gem_info command. Add debug option.
458
480
  * version 0.0.7 : Add mv_month, mv_year commands.
459
481
  * version 0.0.6 : Add callback in Defokerfile.
460
482
  * version 0.0.5 : Fix typo in Defokerfile Template.
@@ -6,15 +6,17 @@ require 'defoker/version'
6
6
  require 'thor'
7
7
  require 'fileutils'
8
8
 
9
- # rubocop:disable ClassLength
9
+ # rubocop:disable ClassLength, MethodLength
10
10
  module Defoker
11
11
  # = Defoker CLI
12
12
  class CLI < Thor
13
13
  class_option :help, type: :boolean, aliases: '-h', desc: 'help message.'
14
14
  class_option :version, type: :boolean, desc: 'version'
15
+ class_option :debug, type: :boolean, aliases: '-d', desc: 'debug mode'
15
16
 
16
17
  desc 'init', 'generate Defokerfile template'
17
18
  def init
19
+ setting_debug_mode
18
20
  Defoker::Core.init
19
21
  exit(true)
20
22
  rescue
@@ -24,18 +26,21 @@ module Defoker
24
26
  option :additional, aliases: 'a'
25
27
  desc 'today', 'create today folder. ex) 20140912, 20140912_hoge'
26
28
  def today
29
+ setting_debug_mode
27
30
  defoker_core_single_caller(:today)
28
31
  end
29
32
 
30
33
  option :additional, aliases: 'a'
31
34
  desc 'tomorrow', 'create tomorrow folder. ex) 20140913, 20140913_hoge'
32
35
  def tomorrow
36
+ setting_debug_mode
33
37
  defoker_core_single_caller(:tomorrow)
34
38
  end
35
39
 
36
40
  option :additional, aliases: 'a'
37
41
  desc 'yesterday', 'create yesterday folder. ex) 20140911, 20140911_hoge'
38
42
  def yesterday
43
+ setting_debug_mode
39
44
  defoker_core_single_caller(:yesterday)
40
45
  end
41
46
 
@@ -43,24 +48,28 @@ module Defoker
43
48
  option :additional, aliases: 'a'
44
49
  desc 'days', "create day folder list. ex) ['20140909','20140910','20140911','20140912'], ['20140909_hoge','20140910_hoge','20140911_hoge','20140912_hoge']"
45
50
  def days(date)
51
+ setting_debug_mode
46
52
  defoker_core_multi_caller(date, :days)
47
53
  end
48
54
 
49
55
  option :additional, aliases: 'a'
50
56
  desc 'this_month', 'create this_month folder. ex) 201409, 201409_hoge'
51
57
  def this_month
58
+ setting_debug_mode
52
59
  defoker_core_single_caller(:this_month)
53
60
  end
54
61
 
55
62
  option :additional, aliases: 'a'
56
63
  desc 'next_month', 'create next_month folder. ex) 201410, 201410_hoge'
57
64
  def next_month
65
+ setting_debug_mode
58
66
  defoker_core_single_caller(:next_month)
59
67
  end
60
68
 
61
69
  option :additional, aliases: 'a'
62
70
  desc 'previous_month', 'create previous_month folder. ex) 201410, 201410_hoge'
63
71
  def previous_month
72
+ setting_debug_mode
64
73
  defoker_core_single_caller(:previous_month)
65
74
  end
66
75
 
@@ -68,24 +77,28 @@ module Defoker
68
77
  option :additional, aliases: 'a'
69
78
  desc 'months', "create month folder list. ex) ['201410','201411','201412','201501'], ['201410_hoge','201411_hoge','201412_hoge','201501_hoge']"
70
79
  def months(date)
80
+ setting_debug_mode
71
81
  defoker_core_multi_caller(date, :months)
72
82
  end
73
83
 
74
84
  option :additional, aliases: 'a'
75
85
  desc 'this_year', 'create this_year folder. ex) 2014, 2014_hoge'
76
86
  def this_year
87
+ setting_debug_mode
77
88
  defoker_core_single_caller(:this_year)
78
89
  end
79
90
 
80
91
  option :additional, aliases: 'a'
81
92
  desc 'next_year', 'create next_year folder. ex) 2015, 2015_hoge'
82
93
  def next_year
94
+ setting_debug_mode
83
95
  defoker_core_single_caller(:next_year)
84
96
  end
85
97
 
86
98
  option :additional, aliases: 'a'
87
99
  desc 'previous_year', 'create previous_year folder. ex) 2013, 2013_hoge'
88
100
  def previous_year
101
+ setting_debug_mode
89
102
  defoker_core_single_caller(:previous_year)
90
103
  end
91
104
 
@@ -93,43 +106,68 @@ module Defoker
93
106
  option :additional, aliases: 'a'
94
107
  desc 'years', "create year folder list. ex) ['2014','2015','2016','2017'], ['2014_hoge','2015_hoge','2016_hoge','2017_hoge']"
95
108
  def years(date)
109
+ setting_debug_mode
96
110
  defoker_core_multi_caller(date, :years)
97
111
  end
98
112
 
99
113
  option :additional, aliases: 'a'
100
114
  desc 'rule', 'create folder by Defokerfile''s rule.'
101
115
  def rule
116
+ setting_debug_mode
102
117
  additional = options[:additional] ? options[:additional] : ''
103
118
  dir, callback = Defoker::Core.rule(additional: additional)
104
- FileUtils.mkdir_p(dir)
119
+ FileUtils.mkdir_p(dir) unless File.exist?(dir)
105
120
  callback[dir] unless callback.nil?
106
121
  exit(true)
107
122
  rescue => e
108
- STDERR.puts(e.backtrace)
123
+ output_error_if_debug_mode(e)
109
124
  exit(false)
110
125
  end
111
126
 
112
127
  desc 'mv_month', 'move daily folders to monthly folder'
113
128
  def mv_month
129
+ setting_debug_mode
114
130
  Defoker::Core.mv_month
115
131
  exit(true)
116
132
  rescue => e
117
- STDERR.puts(e.backtrace)
133
+ output_error_if_debug_mode(e)
118
134
  exit(false)
119
135
  end
120
136
 
121
137
  desc 'mv_year', 'move monthly folders to yearly folder'
122
138
  def mv_year
139
+ setting_debug_mode
123
140
  Defoker::Core.mv_year
124
141
  exit(true)
125
142
  rescue => e
126
- STDERR.puts(e.backtrace)
143
+ output_error_if_debug_mode(e)
127
144
  exit(false)
128
145
  end
129
146
 
130
147
  desc 'version', 'version'
131
148
  def version
132
- p Defoker::VERSION
149
+ puts Defoker::VERSION
150
+ end
151
+
152
+ desc 'gem_info', 'gem_info'
153
+ def gem_info
154
+ print <<-EOS
155
+ ____ __ _
156
+ | _ \\ ___ / _| ___ | | _____ _ __
157
+ | | | |/ _ \\ |_ / _ \\| |/ / _ \\ '__|
158
+ | |_| | __/ _| (_) | < __/ |
159
+ |____/ \\___|_| \\___/|_|\\_\\___|_|
160
+
161
+ [gem name]
162
+ defoker
163
+ [version]
164
+ #{Defoker::VERSION}
165
+ [document url]
166
+ https://github.com/tbpgr/defoker
167
+ [RubyGems url]
168
+ http://rubygems.org/gems/defoker
169
+ EOS
170
+ exit(true)
133
171
  end
134
172
 
135
173
  private
@@ -137,10 +175,10 @@ module Defoker
137
175
  def defoker_core_single_caller(method_name)
138
176
  additional = options[:additional] ? options[:additional] : ''
139
177
  dir = Defoker::Core.send(method_name, additional: additional)
140
- FileUtils.mkdir_p(dir)
178
+ FileUtils.mkdir_p(dir) unless File.exist?(dir)
141
179
  exit(true)
142
180
  rescue => e
143
- STDERR.puts(e.backtrace)
181
+ output_error_if_debug_mode(e)
144
182
  exit(false)
145
183
  end
146
184
 
@@ -148,14 +186,23 @@ module Defoker
148
186
  count = options[:count] ? options[:count].to_i : 3
149
187
  additional = options[:additional] ? options[:additional] : ''
150
188
  dirs = Defoker::Core.send(method_name, date, count: count, additional: additional)
151
- FileUtils.mkdir_p(dirs)
189
+ dirs.each { |dir|FileUtils.mkdir_p(dir) unless File.exist?(dir) }
152
190
  exit(true)
153
191
  rescue => e
154
- STDERR.puts(e.backtrace)
192
+ output_error_if_debug_mode(e)
155
193
  exit(false)
156
194
  end
195
+
196
+ def setting_debug_mode
197
+ $DEBUG = options[:debug]
198
+ end
199
+
200
+ def output_error_if_debug_mode(e)
201
+ return unless options[:debug]
202
+ STDERR.puts(e.backtrace)
203
+ end
157
204
  end
158
205
  end
159
206
 
160
207
  Defoker::CLI.start(ARGV)
161
- # rubocop:enable ClassLength
208
+ # rubocop:enable ClassLength, MethodLength
@@ -1,3 +1,3 @@
1
1
  module Defoker
2
- VERSION = '0.0.7'
2
+ VERSION = '0.0.8'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: defoker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - tbpgr
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-08 00:00:00.000000000 Z
11
+ date: 2014-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler