idcfcloud 0.2.2 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +5 -5
  2. data/.codeclimate.yml +12 -0
  3. data/.rubocop.yml +12 -2
  4. data/README.md +30 -12
  5. data/idcfcloud.gemspec +12 -12
  6. data/lib/idcf/cli/command/morio.rb +4 -4
  7. data/lib/idcf/cli/conf/conf.yml +0 -6
  8. data/lib/idcf/cli/conf/const.rb +32 -29
  9. data/lib/idcf/cli/controller/base.rb +50 -23
  10. data/lib/idcf/cli/controller/compute.rb +15 -2
  11. data/lib/idcf/cli/controller/extend/command.rb +25 -2
  12. data/lib/idcf/cli/controller/extend/search_module.rb +0 -10
  13. data/lib/idcf/cli/controller/extend/util.rb +12 -0
  14. data/lib/idcf/cli/controller/include/client.rb +1 -1
  15. data/lib/idcf/cli/controller/include/command.rb +1 -1
  16. data/lib/idcf/cli/controller/include/util.rb +3 -5
  17. data/lib/idcf/cli/controller/include/validate.rb +1 -1
  18. data/lib/idcf/cli/extend/configure.rb +2 -4
  19. data/lib/idcf/cli/extend/update.rb +21 -21
  20. data/lib/idcf/cli/extend/update_file.rb +21 -10
  21. data/lib/idcf/cli/gem_ext/idcf/json_hyper_schema/expands/link_info_base_extension.rb +25 -9
  22. data/lib/idcf/cli/gem_ext/thor/init_util.rb +6 -3
  23. data/lib/idcf/cli/index.rb +17 -5
  24. data/lib/idcf/cli/lib/api.rb +5 -4
  25. data/lib/idcf/cli/lib/configure.rb +2 -2
  26. data/lib/idcf/cli/lib/convert/filter/field_filter.rb +9 -12
  27. data/lib/idcf/cli/lib/convert/filter/json_path_filter.rb +1 -1
  28. data/lib/idcf/cli/lib/convert/formatter/base.rb +1 -2
  29. data/lib/idcf/cli/lib/convert/formatter/csv_format.rb +15 -32
  30. data/lib/idcf/cli/lib/convert/formatter/json_format.rb +1 -1
  31. data/lib/idcf/cli/lib/convert/formatter/table_format.rb +2 -2
  32. data/lib/idcf/cli/lib/convert/formatter/xml_format.rb +1 -1
  33. data/lib/idcf/cli/lib/convert/helper.rb +16 -5
  34. data/lib/idcf/cli/lib/document.rb +45 -0
  35. data/lib/idcf/cli/lib/util/cli_file.rb +1 -1
  36. data/lib/idcf/cli/lib/util/cli_logger.rb +3 -3
  37. data/lib/idcf/cli/lib/util/ini_conf.rb +2 -2
  38. data/lib/idcf/cli/lib/util/input.rb +40 -5
  39. data/lib/idcf/cli/lib/util/yml_conf.rb +1 -1
  40. data/lib/idcf/cli/service/base.rb +6 -6
  41. data/lib/idcf/cli/service/ilb/base_server_for_protocol.rb +22 -18
  42. data/lib/idcf/cli/validate/custom/month_check_validator.rb +1 -1
  43. data/lib/idcf/cli/validate/custom/require_relation_validator.rb +2 -2
  44. data/lib/idcf/cli/validate/define/base.rb +3 -2
  45. data/lib/idcf/cli/version.rb +1 -1
  46. metadata +55 -68
  47. data/lib/idcf/cli/controller/cdn.rb +0 -37
@@ -38,7 +38,7 @@ module Idcf
38
38
  end
39
39
 
40
40
  result
41
- rescue
41
+ rescue StandardError => _e
42
42
  raise Idcf::Cli::Error::CliError, "Error: could not read '#{path}'"
43
43
  end
44
44
  end
@@ -8,9 +8,9 @@ module Idcf
8
8
  ARG_TYPE_OPT = :opt
9
9
  ARG_TYPE_REST = :rest
10
10
  HELP_FORMAT = {
11
- ARG_TYPE_REQ => '<%s>',
12
- ARG_TYPE_OPT => '[%s]',
13
- ARG_TYPE_REST => '[%s ...]'
11
+ ARG_TYPE_REQ => '<%<name>s>',
12
+ ARG_TYPE_OPT => '[%<name>s]',
13
+ ARG_TYPE_REST => '[%<name>s ...]'
14
14
  }.freeze
15
15
  attr_reader :last_command, :last_command_args
16
16
  include Idcf::Cli::Lib::Include::RecurringCalling
@@ -51,7 +51,7 @@ module Idcf
51
51
  valid_params.each do |param|
52
52
  f = HELP_FORMAT[param[0]]
53
53
  next if f.nil?
54
- cp << format(f, param[1])
54
+ cp << format(f, name: param[1])
55
55
  end
56
56
  cp.join(' ')
57
57
  end
@@ -72,7 +72,7 @@ module Idcf
72
72
  # @return Boolean
73
73
  def target_param?(name)
74
74
  val = name.to_s
75
- exclusion_list = %w(api o)
75
+ exclusion_list = %w[api o]
76
76
  return false if exclusion_list.include?(val)
77
77
  return false if val[0] == '_'
78
78
  true
@@ -107,7 +107,7 @@ module Idcf
107
107
  opt_cnt = method_option_cnt(param)
108
108
 
109
109
  min = p_cnt - opt_cnt
110
- msg = format('Argument: %s', self.class.make_param_s)
110
+ msg = format('Argument: %<arg>s', arg: self.class.make_param_s)
111
111
  cli_error msg unless arg_size.between?(min, p_cnt)
112
112
  true
113
113
  end
@@ -12,15 +12,15 @@ module Idcf
12
12
  #
13
13
  # @param api [Idcf::Ilb::Lib::Api]
14
14
  # @param o [Hash] options
15
- # @option lb_id [String]
16
- # @option protocol [Stirng] http
17
- # @option protocol_port [int] 80
18
- # @option params [Hash] {ipaddress: '0.0.0.0', port: 80}
15
+ # @param lb_id [String]
16
+ # @param protocol [Stirng] http
17
+ # @param protocol_port [int] 80
18
+ # @param params [Hash] {ipaddress: '0.0.0.0', port: 80}
19
19
  def do(api, o, lb_id, protocol, protocol_port, params)
20
20
  @api = api
21
21
  @options = o
22
22
  lb = search_lb(lbs, lb_id)
23
- config = search_config(lb, protocol, protocol_port)
23
+ config = search_config(lb['configs'], protocol, protocol_port)
24
24
 
25
25
  if config.nil?
26
26
  not_param = o[:protocol].nil? ? 'conf_id' : 'protocol'
@@ -64,20 +64,19 @@ module Idcf
64
64
 
65
65
  # config search
66
66
  #
67
- # @param lb_info [Hash]
68
- # @param o [Hash]
67
+ # @param configs [Hash]
68
+ # @param protocol [String]
69
+ # @param p_port [String]
69
70
  # @return Hash
70
71
  # @raise
71
- def search_config(lb_info, protocol, p_port)
72
- lb_info['configs'].each do |v|
72
+ def search_config(configs, protocol, p_port)
73
+ result = nil
74
+ configs.each do |v|
73
75
  next unless target_config?(v, protocol, p_port)
74
- unless v['state'].casecmp('running').zero?
75
- msg = 'The operation is impossible because the target is currently being processed'
76
- cli_error msg
77
- end
78
- return v
76
+ result = v
77
+ break
79
78
  end
80
- nil
79
+ result
81
80
  end
82
81
 
83
82
  # is target config
@@ -86,9 +85,14 @@ module Idcf
86
85
  # @param protocol [String]
87
86
  # @param p_port [String]
88
87
  # @return boolean
89
- def target_config?(config, purotocol, p_port)
90
- config['frontend_protocol'] == purotocol &&
91
- config['port'].to_s == p_port.to_s
88
+ # @raise
89
+ def target_config?(config, protocol, p_port)
90
+ unless config['frontend_protocol'] == protocol && config['port'].to_s == p_port.to_s
91
+ return false
92
+ end
93
+ return true if config['state'].casecmp('running').zero?
94
+ msg = 'The operation is impossible because the target is currently being processed'
95
+ cli_error msg
92
96
  end
93
97
  end
94
98
  end
@@ -29,7 +29,7 @@ module Idcf
29
29
  def valid?(val)
30
30
  Date.parse("#{val}-01")
31
31
  true
32
- rescue
32
+ rescue StandardError => _e
33
33
  false
34
34
  end
35
35
  end
@@ -7,7 +7,7 @@ module Idcf
7
7
  # require relation validator
8
8
  class RequireRelationValidator < ActiveModel::EachValidator
9
9
  MESSAGES = {
10
- message: 'A related parameter isn\'t input. (%s)'
10
+ message: 'A related parameter isn\'t input. (%<msg>s)'
11
11
  }.freeze
12
12
 
13
13
  def validate(record)
@@ -16,7 +16,7 @@ module Idcf
16
16
  nones = make_nones(record)
17
17
  return if nones.empty?
18
18
 
19
- msg = MESSAGES[:message] % nones.join('/')
19
+ msg = format(MESSAGES[:message], msg: nones.join('/'))
20
20
  record.errors.add(nones.first, msg, {})
21
21
  end
22
22
 
@@ -16,12 +16,13 @@ module Idcf
16
16
  :no_ssl,
17
17
  :no_vssl,
18
18
  :json_path,
19
- :fields
19
+ :fields,
20
+ :version
20
21
 
21
22
  validates :output,
22
23
  allow_blank: true,
23
24
  inclusion: {
24
- in: %w(table json xml csv),
25
+ in: %w[table json xml csv],
25
26
  message: 'from this [table/json/xml/csv]'
26
27
  }
27
28
 
@@ -1,5 +1,5 @@
1
1
  module Idcf
2
2
  module Cli
3
- VERSION = '0.2.2'.freeze
3
+ VERSION = '1.1.1'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,41 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: idcfcloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - IDC Frontier Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-08 00:00:00.000000000 Z
11
+ date: 2020-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.14'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.14'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '10.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
41
  - !ruby/object:Gem::Dependency
@@ -82,194 +82,182 @@ dependencies:
82
82
  name: activemodel
83
83
  requirement: !ruby/object:Gem::Requirement
84
84
  requirements:
85
- - - "~>"
86
- - !ruby/object:Gem::Version
87
- version: '4.2'
88
85
  - - ">="
89
86
  - !ruby/object:Gem::Version
90
- version: 4.2.3
87
+ version: 5.2.4.1
91
88
  type: :runtime
92
89
  prerelease: false
93
90
  version_requirements: !ruby/object:Gem::Requirement
94
91
  requirements:
95
- - - "~>"
96
- - !ruby/object:Gem::Version
97
- version: '4.2'
98
92
  - - ">="
99
93
  - !ruby/object:Gem::Version
100
- version: 4.2.3
94
+ version: 5.2.4.1
101
95
  - !ruby/object:Gem::Dependency
102
96
  name: activesupport
103
97
  requirement: !ruby/object:Gem::Requirement
104
98
  requirements:
105
- - - "~>"
106
- - !ruby/object:Gem::Version
107
- version: '4.2'
108
99
  - - ">="
109
100
  - !ruby/object:Gem::Version
110
- version: 4.2.3
101
+ version: 5.2.4.1
111
102
  type: :runtime
112
103
  prerelease: false
113
104
  version_requirements: !ruby/object:Gem::Requirement
114
105
  requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '4.2'
118
106
  - - ">="
119
107
  - !ruby/object:Gem::Version
120
- version: 4.2.3
108
+ version: 5.2.4.1
121
109
  - !ruby/object:Gem::Dependency
122
- name: inifile
110
+ name: builder
123
111
  requirement: !ruby/object:Gem::Requirement
124
112
  requirements:
125
113
  - - "~>"
126
114
  - !ruby/object:Gem::Version
127
- version: '3.0'
128
- - - ">="
129
- - !ruby/object:Gem::Version
130
- version: 3.0.0
115
+ version: '3.1'
131
116
  type: :runtime
132
117
  prerelease: false
133
118
  version_requirements: !ruby/object:Gem::Requirement
134
119
  requirements:
135
120
  - - "~>"
136
121
  - !ruby/object:Gem::Version
137
- version: '3.0'
138
- - - ">="
139
- - !ruby/object:Gem::Version
140
- version: 3.0.0
122
+ version: '3.1'
141
123
  - !ruby/object:Gem::Dependency
142
- name: thor
124
+ name: CFPropertyList
143
125
  requirement: !ruby/object:Gem::Requirement
144
126
  requirements:
145
127
  - - "~>"
146
128
  - !ruby/object:Gem::Version
147
- version: 0.19.4
129
+ version: 2.3.5
148
130
  type: :runtime
149
131
  prerelease: false
150
132
  version_requirements: !ruby/object:Gem::Requirement
151
133
  requirements:
152
134
  - - "~>"
153
135
  - !ruby/object:Gem::Version
154
- version: 0.19.4
136
+ version: 2.3.5
155
137
  - !ruby/object:Gem::Dependency
156
- name: builder
138
+ name: facter
157
139
  requirement: !ruby/object:Gem::Requirement
158
140
  requirements:
159
141
  - - "~>"
160
142
  - !ruby/object:Gem::Version
161
- version: '3.1'
143
+ version: 2.5.1
162
144
  type: :runtime
163
145
  prerelease: false
164
146
  version_requirements: !ruby/object:Gem::Requirement
165
147
  requirements:
166
148
  - - "~>"
167
149
  - !ruby/object:Gem::Version
168
- version: '3.1'
150
+ version: 2.5.1
169
151
  - !ruby/object:Gem::Dependency
170
- name: kosi
152
+ name: idcf-faraday_middleware
171
153
  requirement: !ruby/object:Gem::Requirement
172
154
  requirements:
173
155
  - - "~>"
174
156
  - !ruby/object:Gem::Version
175
- version: '1.0'
176
- - - ">="
177
- - !ruby/object:Gem::Version
178
- version: 1.0.0
157
+ version: 0.0.2
179
158
  type: :runtime
180
159
  prerelease: false
181
160
  version_requirements: !ruby/object:Gem::Requirement
182
161
  requirements:
183
162
  - - "~>"
184
163
  - !ruby/object:Gem::Version
185
- version: '1.0'
186
- - - ">="
187
- - !ruby/object:Gem::Version
188
- version: 1.0.0
164
+ version: 0.0.2
189
165
  - !ruby/object:Gem::Dependency
190
- name: open_uri_redirections
166
+ name: idcf-json_hyper_schema
191
167
  requirement: !ruby/object:Gem::Requirement
192
168
  requirements:
193
169
  - - "~>"
194
170
  - !ruby/object:Gem::Version
195
- version: 0.2.1
171
+ version: 0.3.1
196
172
  type: :runtime
197
173
  prerelease: false
198
174
  version_requirements: !ruby/object:Gem::Requirement
199
175
  requirements:
200
176
  - - "~>"
201
177
  - !ruby/object:Gem::Version
202
- version: 0.2.1
178
+ version: 0.3.1
203
179
  - !ruby/object:Gem::Dependency
204
- name: idcf-json_hyper_schema
180
+ name: inifile
205
181
  requirement: !ruby/object:Gem::Requirement
206
182
  requirements:
207
183
  - - "~>"
208
184
  - !ruby/object:Gem::Version
209
- version: 0.1.0
185
+ version: '3.0'
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ version: 3.0.0
210
189
  type: :runtime
211
190
  prerelease: false
212
191
  version_requirements: !ruby/object:Gem::Requirement
213
192
  requirements:
214
193
  - - "~>"
215
194
  - !ruby/object:Gem::Version
216
- version: 0.1.0
195
+ version: '3.0'
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ version: 3.0.0
217
199
  - !ruby/object:Gem::Dependency
218
- name: idcf-faraday_middleware
200
+ name: jsonpath
219
201
  requirement: !ruby/object:Gem::Requirement
220
202
  requirements:
221
203
  - - "~>"
222
204
  - !ruby/object:Gem::Version
223
- version: 0.0.2
205
+ version: 0.8.10
224
206
  type: :runtime
225
207
  prerelease: false
226
208
  version_requirements: !ruby/object:Gem::Requirement
227
209
  requirements:
228
210
  - - "~>"
229
211
  - !ruby/object:Gem::Version
230
- version: 0.0.2
212
+ version: 0.8.10
231
213
  - !ruby/object:Gem::Dependency
232
- name: jsonpath
214
+ name: kosi
233
215
  requirement: !ruby/object:Gem::Requirement
234
216
  requirements:
235
217
  - - "~>"
236
218
  - !ruby/object:Gem::Version
237
- version: 0.8.10
219
+ version: '1.0'
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: 1.0.0
238
223
  type: :runtime
239
224
  prerelease: false
240
225
  version_requirements: !ruby/object:Gem::Requirement
241
226
  requirements:
242
227
  - - "~>"
243
228
  - !ruby/object:Gem::Version
244
- version: 0.8.10
229
+ version: '1.0'
230
+ - - ">="
231
+ - !ruby/object:Gem::Version
232
+ version: 1.0.0
245
233
  - !ruby/object:Gem::Dependency
246
- name: facter
234
+ name: open_uri_redirections
247
235
  requirement: !ruby/object:Gem::Requirement
248
236
  requirements:
249
237
  - - "~>"
250
238
  - !ruby/object:Gem::Version
251
- version: 2.5.1
239
+ version: 0.2.1
252
240
  type: :runtime
253
241
  prerelease: false
254
242
  version_requirements: !ruby/object:Gem::Requirement
255
243
  requirements:
256
244
  - - "~>"
257
245
  - !ruby/object:Gem::Version
258
- version: 2.5.1
246
+ version: 0.2.1
259
247
  - !ruby/object:Gem::Dependency
260
- name: CFPropertyList
248
+ name: thor
261
249
  requirement: !ruby/object:Gem::Requirement
262
250
  requirements:
263
251
  - - "~>"
264
252
  - !ruby/object:Gem::Version
265
- version: 2.3.5
253
+ version: 0.19.4
266
254
  type: :runtime
267
255
  prerelease: false
268
256
  version_requirements: !ruby/object:Gem::Requirement
269
257
  requirements:
270
258
  - - "~>"
271
259
  - !ruby/object:Gem::Version
272
- version: 2.3.5
260
+ version: 0.19.4
273
261
  description: IDCF Cli
274
262
  email: []
275
263
  executables:
@@ -292,7 +280,6 @@ files:
292
280
  - lib/idcf/cli/conf/conf.yml
293
281
  - lib/idcf/cli/conf/const.rb
294
282
  - lib/idcf/cli/controller/base.rb
295
- - lib/idcf/cli/controller/cdn.rb
296
283
  - lib/idcf/cli/controller/compute.rb
297
284
  - lib/idcf/cli/controller/dns.rb
298
285
  - lib/idcf/cli/controller/extend/command.rb
@@ -328,6 +315,7 @@ files:
328
315
  - lib/idcf/cli/lib/convert/formatter/table_format.rb
329
316
  - lib/idcf/cli/lib/convert/formatter/xml_format.rb
330
317
  - lib/idcf/cli/lib/convert/helper.rb
318
+ - lib/idcf/cli/lib/document.rb
331
319
  - lib/idcf/cli/lib/include/recurring_calling.rb
332
320
  - lib/idcf/cli/lib/util/cli_file.rb
333
321
  - lib/idcf/cli/lib/util/cli_logger.rb
@@ -363,15 +351,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
363
351
  requirements:
364
352
  - - ">="
365
353
  - !ruby/object:Gem::Version
366
- version: '0'
354
+ version: 2.5.0
367
355
  required_rubygems_version: !ruby/object:Gem::Requirement
368
356
  requirements:
369
357
  - - ">="
370
358
  - !ruby/object:Gem::Version
371
359
  version: '0'
372
360
  requirements: []
373
- rubyforge_project:
374
- rubygems_version: 2.6.13
361
+ rubygems_version: 3.1.4
375
362
  signing_key:
376
363
  specification_version: 4
377
364
  summary: IDCF Cli tools