eac_tools 0.75.1 → 0.76.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +5 -5
  3. data/Gemfile.lock +67 -49
  4. data/lib/eac_tools/version.rb +1 -1
  5. data/sub/avm-eac_redmine_base0/Gemfile +2 -2
  6. data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +8 -6
  7. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/install.rb +9 -0
  8. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +1 -1
  9. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/entity_base.rb +2 -2
  10. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/core_update.rb +1 -1
  11. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/version.rb +1 -1
  12. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/apache_host_spec.rb +3 -3
  13. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec.rb +1 -1
  14. data/sub/avm-eac_redmine_base0/spec/rubocop_spec.rb +1 -1
  15. data/sub/avm-eac_redmine_base0/spec/spec_helper.rb +2 -2
  16. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/install.sh.template +3 -0
  17. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +1 -1
  18. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_buffer.rb +4 -0
  19. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/line_factory.rb +3 -1
  20. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/bundler/incompatible_parser/ruby_requirement.rb +16 -0
  21. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
  22. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.source.out +0 -0
  23. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/bundler/incompatible_parser_spec_files/3.target.yaml +305 -0
  24. data/sub/avm-git/avm-git.gemspec +4 -3
  25. data/sub/avm-git/lib/avm/git/commit/diff_tree_line.rb +1 -1
  26. data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +3 -5
  27. data/sub/avm-git/lib/avm/git/scms/git/commit_dirty.rb +1 -0
  28. data/sub/avm-git/lib/avm/git/version.rb +1 -1
  29. data/sub/avm-git/spec/lib/avm/git/scms/git/commit/deploy_spec.rb +3 -3
  30. data/sub/eac_cli/eac_cli.gemspec +1 -1
  31. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/base_formatter.rb +15 -0
  32. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/csv_formatter.rb +23 -0
  33. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/yaml_formatter.rb +18 -0
  34. data/sub/eac_cli/lib/eac_cli/runner_with/output_item.rb +42 -0
  35. data/sub/eac_cli/lib/eac_cli/version.rb +1 -1
  36. data/sub/eac_envs-http/eac_envs-http.gemspec +2 -2
  37. data/sub/eac_envs-http/lib/eac_envs/http/response/statuses.rb +1 -1
  38. data/sub/eac_envs-http/lib/eac_envs/http/version.rb +1 -1
  39. data/sub/eac_rest/eac_rest.gemspec +2 -2
  40. data/sub/eac_rest/lib/eac_rest/api.rb +2 -14
  41. data/sub/eac_rest/lib/eac_rest/entity/data.rb +44 -0
  42. data/sub/eac_rest/lib/eac_rest/entity/fetching.rb +20 -0
  43. data/sub/eac_rest/lib/eac_rest/entity.rb +1 -32
  44. data/sub/eac_rest/lib/eac_rest/helper.rb +34 -0
  45. data/sub/eac_rest/lib/eac_rest/response.rb +2 -0
  46. data/sub/eac_rest/lib/eac_rest/version.rb +1 -1
  47. data/sub/eac_ruby_utils/eac_ruby_utils.gemspec +1 -1
  48. data/sub/eac_ruby_utils/lib/eac_ruby_utils/module_ancestors_variable.rb +1 -1
  49. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  50. metadata +23 -19
@@ -0,0 +1,305 @@
1
+ ---
2
+ - :gem_name: actionpack
3
+ :versions_requirements:
4
+ - :requirements_source: ">= 5.0"
5
+ :stack:
6
+ - :gem_name: actionpack-xml_parser
7
+ :version: &9 !ruby/object:Gem::Version
8
+ version: 2.0.1
9
+ - :requirements_source: "= 5.2.8.1"
10
+ :stack:
11
+ - :gem_name: rails (= 5.2.8.1)
12
+ :version: &1 !ruby/object:Gem::Version
13
+ version: 5.2.8.1
14
+ - :requirements_source: ">= 5.0.1.rc1"
15
+ :stack:
16
+ - :gem_name: rails-controller-testing
17
+ :version: &2 !ruby/object:Gem::Version
18
+ version: 1.0.5
19
+ - :requirements_source: ">= 3.0"
20
+ :stack:
21
+ - :gem_name: rspec-rails (~> 3.5, >= 3.5.2)
22
+ :version: &4 !ruby/object:Gem::Version
23
+ version: 3.9.1
24
+ - :requirements_source: ">= 3.1"
25
+ :stack:
26
+ - :gem_name: slim-rails
27
+ :version: &14 !ruby/object:Gem::Version
28
+ version: 3.6.2
29
+ - :gem_name: actionview
30
+ :versions_requirements:
31
+ - :requirements_source: "= 5.2.8.1"
32
+ :stack:
33
+ - :gem_name: rails (= 5.2.8.1)
34
+ :version: *1
35
+ - :requirements_source: ">= 5.0.1.rc1"
36
+ :stack:
37
+ - :gem_name: rails-controller-testing
38
+ :version: *2
39
+ - :gem_name: activerecord
40
+ :versions_requirements:
41
+ - :requirements_source: "< 6, >= 4.1"
42
+ :stack:
43
+ - :gem_name: activemodel-associations
44
+ :version: &3 !ruby/object:Gem::Version
45
+ version: 0.2.0
46
+ - :requirements_source: ">= 4.0.0, < 7.1"
47
+ :stack:
48
+ - :gem_name: awesome_nested_set
49
+ :version: &15 !ruby/object:Gem::Version
50
+ version: 3.5.0
51
+ - :requirements_source: "= 5.2.8.1"
52
+ :stack:
53
+ - :gem_name: rails (= 5.2.8.1)
54
+ :version: *1
55
+ - :gem_name: activesupport
56
+ :versions_requirements:
57
+ - :requirements_source: "< 6, >= 4.1"
58
+ :stack:
59
+ - :gem_name: activemodel-associations
60
+ :version: *3
61
+ - :requirements_source: ">= 4, < 7"
62
+ :stack:
63
+ - :gem_name: redmine_with_git
64
+ :version: &5 !ruby/object:Gem::Version
65
+ version: 0.7.9
66
+ - :gem_name: eac_ruby_utils (~> 0.119)
67
+ :version: !ruby/object:Gem::Version
68
+ version: 0.119.1
69
+ - :requirements_source: ">= 2"
70
+ :stack:
71
+ - :gem_name: html-pipeline
72
+ :version: !ruby/object:Gem::Version
73
+ version: 2.14.3
74
+ - :requirements_source: "= 5.2.8.1"
75
+ :stack:
76
+ - :gem_name: rails (= 5.2.8.1)
77
+ :version: *1
78
+ - :requirements_source: ">= 5.0.1.rc1"
79
+ :stack:
80
+ - :gem_name: rails-controller-testing
81
+ :version: *2
82
+ - :requirements_source: ">= 5.0.0"
83
+ :stack:
84
+ - :gem_name: rails-dom-testing
85
+ :version: &11 !ruby/object:Gem::Version
86
+ version: 2.2.0
87
+ - :requirements_source: ">= 3.0"
88
+ :stack:
89
+ - :gem_name: rspec-rails (~> 3.5, >= 3.5.2)
90
+ :version: *4
91
+ - :requirements_source: ">= 4.2.0"
92
+ :stack:
93
+ - :gem_name: rubocop-rails (~> 2.9.0)
94
+ :version: &7 !ruby/object:Gem::Version
95
+ version: 2.9.1
96
+ - :gem_name: i18n
97
+ :versions_requirements:
98
+ - :requirements_source: "~> 1.8.2"
99
+ :stack: []
100
+ - :requirements_source: ">= 0.7, < 2"
101
+ :stack:
102
+ - :gem_name: rails (= 5.2.8.1)
103
+ :version: *1
104
+ - :gem_name: activesupport (= 5.2.8.1)
105
+ :version: *1
106
+ - :gem_name: mail
107
+ :versions_requirements:
108
+ - :requirements_source: "~> 2.7.1"
109
+ :stack: []
110
+ - :requirements_source: "~> 2.5, >= 2.5.4"
111
+ :stack:
112
+ - :gem_name: rails (= 5.2.8.1)
113
+ :version: *1
114
+ - :gem_name: actionmailer (= 5.2.8.1)
115
+ :version: *1
116
+ - :gem_name: mini_mime
117
+ :versions_requirements:
118
+ - :requirements_source: "~> 1.0.1"
119
+ :stack: []
120
+ - :requirements_source: ">= 0.1.3"
121
+ :stack:
122
+ - :gem_name: capybara (~> 3.31.0)
123
+ :version: &6 !ruby/object:Gem::Version
124
+ version: 3.31.0
125
+ - :requirements_source: ">= 0.1.1"
126
+ :stack:
127
+ - :gem_name: mail (~> 2.7.1)
128
+ :version: !ruby/object:Gem::Version
129
+ version: 2.7.1
130
+ - :gem_name: nokogiri
131
+ :versions_requirements:
132
+ - :requirements_source: "~> 1.13.10"
133
+ :stack: []
134
+ - :requirements_source: "~> 1.15, >= 1.15.2"
135
+ :stack:
136
+ - :gem_name: redmine_with_git
137
+ :version: *5
138
+ - :gem_name: avm (~> 0.78)
139
+ :version: !ruby/object:Gem::Version
140
+ version: 0.78.0
141
+ - :gem_name: aranha-parsers (~> 0.20)
142
+ :version: &8 !ruby/object:Gem::Version
143
+ version: 0.21.0
144
+ - :gem_name: rack
145
+ :versions_requirements:
146
+ - :requirements_source: "~> 2.0, >= 2.0.8"
147
+ :stack:
148
+ - :gem_name: rails (= 5.2.8.1)
149
+ :version: *1
150
+ - :gem_name: actionpack (= 5.2.8.1)
151
+ :version: *1
152
+ - :requirements_source: ">= 1.6.0"
153
+ :stack:
154
+ - :gem_name: capybara (~> 3.31.0)
155
+ :version: *6
156
+ - :requirements_source: ">= 1.5.1"
157
+ :stack:
158
+ - :gem_name: gitlab-grack (~> 2.0.0)
159
+ :version: !ruby/object:Gem::Version
160
+ version: 2.0.2
161
+ - :requirements_source:
162
+ :stack:
163
+ - :gem_name: rack-parser
164
+ :version: !ruby/object:Gem::Version
165
+ version: 0.7.0
166
+ - :requirements_source: ">= 1.4"
167
+ :stack:
168
+ - :gem_name: request_store (~> 1.5.0)
169
+ :version: !ruby/object:Gem::Version
170
+ version: 1.5.1
171
+ - :requirements_source: ">= 1.1"
172
+ :stack:
173
+ - :gem_name: rubocop-rails (~> 2.9.0)
174
+ :version: *7
175
+ - :requirements_source: ">= 2.2.4"
176
+ :stack:
177
+ - :gem_name: sidekiq
178
+ :version: !ruby/object:Gem::Version
179
+ version: 7.1.2
180
+ - :requirements_source: "> 1, < 3"
181
+ :stack:
182
+ - :gem_name: redmine_plugins_helper
183
+ :version: &12 !ruby/object:Gem::Version
184
+ version: 0.12.2
185
+ - :gem_name: sass-rails (~> 5.0)
186
+ :version: &13 !ruby/object:Gem::Version
187
+ version: 5.1.0
188
+ - :gem_name: sprockets (>= 2.8, < 4.0)
189
+ :version: !ruby/object:Gem::Version
190
+ version: 3.7.2
191
+ - :gem_name: rails
192
+ :versions_requirements:
193
+ - :requirements_source: "= 5.2.8.1"
194
+ :stack: []
195
+ - :requirements_source: "< 6.2, >= 4.2.0"
196
+ :stack:
197
+ - :gem_name: active_scaffold
198
+ :version: !ruby/object:Gem::Version
199
+ version: 3.6.20
200
+ - :requirements_source: ">= 4.1"
201
+ :stack:
202
+ - :gem_name: deface (= 1.5.3)
203
+ :version: !ruby/object:Gem::Version
204
+ version: 1.5.3
205
+ - :requirements_source: ">= 4.2.11"
206
+ :stack:
207
+ - :gem_name: redmine_nonproject_modules
208
+ :version: &10 !ruby/object:Gem::Version
209
+ version: 0.3.12
210
+ - :gem_name: eac_rails_utils (~> 0.15)
211
+ :version: *8
212
+ - :requirements_source: ">= 5.2"
213
+ :stack:
214
+ - :gem_name: invisible_captcha
215
+ :version: !ruby/object:Gem::Version
216
+ version: 2.1.0
217
+ - :gem_name: railties
218
+ :versions_requirements:
219
+ - :requirements_source: ">= 5.0"
220
+ :stack:
221
+ - :gem_name: actionpack-xml_parser
222
+ :version: *9
223
+ - :requirements_source: ">= 4.2.0"
224
+ :stack:
225
+ - :gem_name: redmine_nonproject_modules
226
+ :version: *10
227
+ - :gem_name: jquery-rails (~> 4.5)
228
+ :version: !ruby/object:Gem::Version
229
+ version: 4.6.0
230
+ - :requirements_source: ">= 3.2.16"
231
+ :stack:
232
+ - :gem_name: jquery-ui-rails (~> 5.0.5)
233
+ :version: !ruby/object:Gem::Version
234
+ version: 5.0.5
235
+ - :requirements_source: "= 5.2.8.1"
236
+ :stack:
237
+ - :gem_name: rails (= 5.2.8.1)
238
+ :version: *1
239
+ - :requirements_source: ">= 5.1, < 6.2"
240
+ :stack:
241
+ - :gem_name: roadie-rails (~> 2.2.0)
242
+ :version: *11
243
+ - :requirements_source: ">= 3.0"
244
+ :stack:
245
+ - :gem_name: rspec-rails (~> 3.5, >= 3.5.2)
246
+ :version: *4
247
+ - :requirements_source: ">= 5.2.0"
248
+ :stack:
249
+ - :gem_name: redmine_plugins_helper
250
+ :version: *12
251
+ - :gem_name: sass-rails (~> 5.0)
252
+ :version: *13
253
+ - :requirements_source: ">= 3.1"
254
+ :stack:
255
+ - :gem_name: slim-rails
256
+ :version: *14
257
+ - :gem_name: rspec-rails
258
+ :versions_requirements:
259
+ - :requirements_source: "~> 3.5, >= 3.5.2"
260
+ :stack: []
261
+ - :requirements_source:
262
+ :stack:
263
+ - :gem_name: redmine_plugins_helper
264
+ :version: *12
265
+ - :gem_name: rubocop
266
+ :versions_requirements:
267
+ - :requirements_source: "~> 1.12.0"
268
+ :stack: []
269
+ - :requirements_source: ">= 0.90.0, < 2.0"
270
+ :stack:
271
+ - :gem_name: rubocop-rails (~> 2.9.0)
272
+ :version: *7
273
+ - :requirements_source: "~> 1.0"
274
+ :stack:
275
+ - :gem_name: rubocop-rspec
276
+ :version: !ruby/object:Gem::Version
277
+ version: 2.4.0
278
+ - :gem_name: "ruby\0"
279
+ :versions_requirements: []
280
+ - :gem_name: selenium-webdriver
281
+ :versions_requirements:
282
+ - :requirements_source: "~> 3.142.7"
283
+ :stack: []
284
+ - :requirements_source: "> 3.141, < 5.0"
285
+ :stack:
286
+ - :gem_name: webdrivers (~> 4.4)
287
+ :version: !ruby/object:Gem::Version
288
+ version: 4.7.0
289
+ - :gem_name: shoulda-matchers
290
+ :versions_requirements:
291
+ - :requirements_source: "~> 2.7.0"
292
+ :stack: []
293
+ - :requirements_source: ">= 1.4.1, < 3.0"
294
+ :stack:
295
+ - :gem_name: shoulda (~> 3.5.0)
296
+ :version: *15
297
+ - :gem_name: simplecov
298
+ :versions_requirements:
299
+ - :requirements_source: "~> 0.18.5"
300
+ :stack: []
301
+ - :requirements_source:
302
+ :stack:
303
+ - :gem_name: codeclimate-test-reporter
304
+ :version: !ruby/object:Gem::Version
305
+ version: 1.0.7
@@ -11,13 +11,14 @@ Gem::Specification.new do |s|
11
11
  s.summary = 'Put here de description.'
12
12
 
13
13
  s.files = Dir['{lib,locale}/**/*']
14
+ s.required_ruby_version = '>= 2.7'
14
15
 
15
- s.add_dependency 'avm', '~> 0.73', '>= 0.73.1'
16
+ s.add_dependency 'avm', '~> 0.79'
16
17
  s.add_dependency 'avm-files', '~> 0.6', '>= 0.6.2'
17
18
  s.add_dependency 'eac_git', '~> 0.14', '>= 0.14.1'
18
- s.add_dependency 'eac_ruby_utils', '~> 0.117'
19
+ s.add_dependency 'eac_ruby_utils', '~> 0.119', '>= 0.119.1'
19
20
  s.add_dependency 'git', '~> 1.18'
20
21
 
21
22
  s.add_development_dependency 'aranha-parsers', '~> 0.8', '>= 0.8.5'
22
- s.add_development_dependency 'eac_ruby_gem_support', '~> 0.4'
23
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.7.0'
23
24
  end
@@ -20,7 +20,7 @@ module Avm
20
20
  end
21
21
 
22
22
  def fields
23
- FIELDS.map { |field| [field, send(field)] }.to_h
23
+ FIELDS.index_with { |field| send(field) }
24
24
  end
25
25
 
26
26
  private
@@ -21,11 +21,9 @@ module Avm
21
21
 
22
22
  %w[execute execute! system system!].each do |exec_type|
23
23
  define_method exec_type do |*args|
24
- begin
25
- command(*args).send(exec_type)
26
- rescue ::EacRubyUtils::Envs::ExecutionError
27
- raise ::Avm::Git::Launcher::Error
28
- end
24
+ command(*args).send(exec_type)
25
+ rescue ::EacRubyUtils::Envs::ExecutionError
26
+ raise ::Avm::Git::Launcher::Error
29
27
  end
30
28
  end
31
29
 
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'avm/scms/commit_info'
3
4
  require 'avm/git/scms/git/changed_file'
4
5
  require 'eac_ruby_utils/core_ext'
5
6
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Git
5
- VERSION = '0.13.3'
5
+ VERSION = '0.13.4'
6
6
  end
7
7
  end
@@ -3,7 +3,7 @@
3
3
  require 'avm/git/scms/git'
4
4
  require 'eac_ruby_utils/fs/temp'
5
5
 
6
- RSpec.describe ::Avm::Git::Scms::Git::Commit::Deploy, git: true do
6
+ RSpec.describe ::Avm::Git::Scms::Git::Commit::Deploy, git: true do # rubocop:disable RSpec/MultipleMemoizedHelpers
7
7
  class << self
8
8
  FROM_DEPLOY = %w[a.txt b.txt c.txt appended].freeze # rubocop:disable RSpec/LeakyConstantDeclaration
9
9
  NOT_FROM_DEPLOY = %w[to_be_removed].freeze # rubocop:disable RSpec/LeakyConstantDeclaration
@@ -80,11 +80,11 @@ RSpec.describe ::Avm::Git::Scms::Git::Commit::Deploy, git: true do
80
80
  target_dir.remove
81
81
  end
82
82
 
83
- context 'without run' do # rubocop:disable RSpec/EmptyExampleGroup
83
+ context 'without run' do # rubocop:disable RSpec/EmptyExampleGroup, RSpec/MultipleMemoizedHelpers
84
84
  check_files(false)
85
85
  end
86
86
 
87
- context 'with run' do # rubocop:disable RSpec/EmptyExampleGroup
87
+ context 'with run' do # rubocop:disable RSpec/EmptyExampleGroup, RSpec/MultipleMemoizedHelpers
88
88
  before { instance.run }
89
89
 
90
90
  check_files(true)
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
14
14
 
15
15
  s.add_dependency 'colorize', '~> 0.8', '>= 0.8.1'
16
16
  s.add_dependency 'eac_config', '~> 0.14'
17
- s.add_dependency 'eac_ruby_utils', '~> 0.119'
17
+ s.add_dependency 'eac_ruby_utils', '~> 0.119', '>= 0.119.1'
18
18
 
19
19
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5.1'
20
20
  end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'eac_ruby_utils/acts_as_abstract'
5
+
6
+ module EacCli
7
+ module RunnerWith
8
+ module OutputItem
9
+ class BaseFormatter
10
+ acts_as_abstract :to_output
11
+ common_constructor :item_hash
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'csv'
4
+ require 'eac_ruby_utils/core_ext'
5
+ require 'eac_cli/runner_with/output_item/base_formatter'
6
+
7
+ module EacCli
8
+ module RunnerWith
9
+ module OutputItem
10
+ class CsvFormatter < ::EacCli::RunnerWith::OutputItem::BaseFormatter
11
+ COLUMNS = %w[key value].freeze
12
+
13
+ # @return [String]
14
+ def to_output
15
+ ::CSV.generate do |csv|
16
+ csv << COLUMNS
17
+ item_hash.each { |k, v| csv << [k, v] }
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'eac_cli/runner_with/output_item/base_formatter'
5
+ require 'yaml'
6
+
7
+ module EacCli
8
+ module RunnerWith
9
+ module OutputItem
10
+ class YamlFormatter < ::EacCli::RunnerWith::OutputItem::BaseFormatter
11
+ # @return [String]
12
+ def to_output
13
+ ::YAML.dump(item_hash.deep_stringify_keys)
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_cli/runner_with/output'
4
+ require 'eac_ruby_utils/core_ext'
5
+ require 'eac_ruby_utils/acts_as_abstract'
6
+
7
+ module EacCli
8
+ module RunnerWith
9
+ module OutputItem
10
+ require_sub __FILE__
11
+
12
+ FORMATS = {
13
+ 'csv' => ::EacCli::RunnerWith::OutputItem::CsvFormatter,
14
+ 'yaml' => ::EacCli::RunnerWith::OutputItem::YamlFormatter
15
+ }.freeze
16
+
17
+ common_concern do
18
+ acts_as_abstract :item_hash
19
+ include ::EacCli::RunnerWith::Output
20
+
21
+ runner_definition do
22
+ arg_opt '-f', '--format', 'Format to output item.', default: 'yaml'
23
+ end
24
+ end
25
+
26
+ # @return [String]
27
+ def output_content
28
+ formatter.to_output
29
+ end
30
+
31
+ # @return [EacCli::RunnerWith::OutputList::BaseFormatter]
32
+ def formatter
33
+ formatter_class.new(item_hash)
34
+ end
35
+
36
+ # @return [Class]
37
+ def formatter_class
38
+ FORMATS.fetch(parsed.format)
39
+ end
40
+ end
41
+ end
42
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacCli
4
- VERSION = '0.36.0'
4
+ VERSION = '0.37.0'
5
5
  end
@@ -13,8 +13,8 @@ Gem::Specification.new do |s|
13
13
  s.files = Dir['{lib}/**/*']
14
14
 
15
15
  s.add_dependency 'eac_fs', '~> 0.16'
16
- s.add_dependency 'eac_ruby_utils', '~> 0.117', '>= 0.117.1'
17
- s.add_dependency 'faraday', '~> 2.7', '>= 2.7.6'
16
+ s.add_dependency 'eac_ruby_utils', '~> 0.119', '>= 0.119.1'
17
+ s.add_dependency 'faraday', '~> 2.7', '>= 2.7.10'
18
18
  s.add_dependency 'faraday-follow_redirects', '~> 0.3'
19
19
  s.add_dependency 'faraday-gzip', '~> 0.1'
20
20
  s.add_dependency 'faraday-multipart', '~> 1.0', '>= 1.0.4'
@@ -7,7 +7,7 @@ module EacEnvs
7
7
  class Response < ::StandardError
8
8
  module Statuses
9
9
  def raise_unless_200
10
- return nil if status == 200
10
+ return nil if status >= 200 && status < 300
11
11
 
12
12
  raise self
13
13
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module EacEnvs
4
4
  module Http
5
- VERSION = '0.4.0'
5
+ VERSION = '0.4.1'
6
6
  end
7
7
  end
@@ -12,9 +12,9 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib}/**/*']
14
14
 
15
- s.add_dependency 'eac_envs-http', '~> 0.4'
15
+ s.add_dependency 'eac_envs-http', '~> 0.4', '>= 0.4.1'
16
16
  s.add_dependency 'eac_fs', '~> 0.16'
17
- s.add_dependency 'eac_ruby_utils', '~> 0.117', '>= 0.117.1'
17
+ s.add_dependency 'eac_ruby_utils', '~> 0.119', '>= 0.119.1'
18
18
 
19
19
  s.add_development_dependency 'aranha-parsers', '~> 0.15'
20
20
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5.1'
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'eac_rest/helper'
3
4
  require 'eac_rest/request'
4
5
  require 'eac_ruby_utils/core_ext'
5
6
 
@@ -40,20 +41,7 @@ module EacRest
40
41
 
41
42
  # @return [Addressable::URI]
42
43
  def build_service_url(suffix)
43
- r = ::Addressable::URI.parse(suffix)
44
- return r if r.scheme.present?
45
-
46
- s = build_service_url_suffix(suffix)
47
- r = ::Addressable::URI.parse(root_url)
48
- r.path += s.path
49
- r.query_values = r.query_values(::Array).if_present([]) +
50
- s.query_values(::Array).if_present([])
51
- r
52
- end
53
-
54
- # @return [Addressable::URI]
55
- def build_service_url_suffix(suffix)
56
- ::Addressable::URI.parse(suffix)
44
+ ::EacRest::Helper.url_join(root_url, suffix)
57
45
  end
58
46
 
59
47
  # @return [EacRest::Entity]
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module EacRest
6
+ class Entity
7
+ module Data
8
+ common_concern
9
+
10
+ # @return [Hash]
11
+ def data
12
+ if internal_data.blank?
13
+ self.internal_data = data_or_id_data? ? data_or_id : data_from_id
14
+ end
15
+
16
+ internal_data
17
+ end
18
+
19
+ # @return [Boolean]
20
+ def data_or_id_data?
21
+ data_or_id.is_a?(::Hash)
22
+ end
23
+
24
+ # @return [Hash]
25
+ def data_from_id
26
+ raise_abstract_method __method__
27
+ end
28
+
29
+ # @return [Object]
30
+ def id
31
+ data_or_id_data? ? id_from_data : data_or_id
32
+ end
33
+
34
+ # @return [Object]
35
+ def id_from_data
36
+ raise_abstract_method __method__
37
+ end
38
+
39
+ private
40
+
41
+ attr_accessor :internal_data
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/helper'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module EacRest
7
+ class Entity
8
+ module Fetching
9
+ # @return [Addressable::URI]
10
+ def entity_root_url_suffix
11
+ parent_entity.if_present('', &:entity_root_url_suffix).to_uri
12
+ end
13
+
14
+ # @return [EacRest::Request]
15
+ def request(url_suffix)
16
+ api.request(::EacRest::Helper.url_join(entity_root_url_suffix, url_suffix))
17
+ end
18
+ end
19
+ end
20
+ end