eac_tools 0.78.0 → 0.79.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.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +27 -18
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/lib/avm/application_scms/base.rb +28 -0
  5. data/sub/avm/lib/avm/application_scms.rb +9 -0
  6. data/sub/avm/lib/avm/applications/base/scm.rb +27 -0
  7. data/sub/avm/lib/avm/applications/base.rb +10 -1
  8. data/sub/avm/lib/avm/entries/base/inherited_entry_value.rb +16 -1
  9. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/default_value.rb +2 -1
  10. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/inherited_value.rb +2 -1
  11. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/generic_component.rb +4 -19
  12. data/sub/avm/lib/avm/patches/eac_config/entry_path.rb +46 -0
  13. data/sub/avm/lib/avm/registry/application_scms.rb +15 -0
  14. data/sub/avm/lib/avm/registry.rb +3 -3
  15. data/sub/avm/lib/avm/rspec/shared_examples/entries_values.rb +2 -2
  16. data/sub/avm/lib/avm/version.rb +1 -1
  17. data/sub/avm/spec/lib/avm/applications/base/entries_spec.rb +29 -0
  18. data/sub/avm/spec/lib/avm/applications/base/entries_spec_files/config.yml +11 -0
  19. data/sub/avm/spec/lib/avm/patches/eac_config/entry_path_spec.rb +28 -0
  20. data/sub/avm-eac_github_base0/Gemfile +8 -0
  21. data/sub/avm-eac_github_base0/avm-eac_github_base0.gemspec +21 -0
  22. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/entity.rb +24 -0
  23. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/organization.rb +19 -0
  24. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/repository.rb +14 -0
  25. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/root.rb +20 -0
  26. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/api.rb +18 -0
  27. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/application_scms/base.rb +13 -0
  28. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/application_scms.rb +11 -0
  29. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0/version.rb +7 -0
  30. data/sub/avm-eac_github_base0/lib/avm/eac_github_base0.rb +9 -0
  31. data/sub/avm-eac_github_base0/spec/avm/eac_github_base0/application_scms/base_spec.rb +7 -0
  32. data/sub/avm-eac_github_base0/spec/rubocop_spec.rb +3 -0
  33. data/sub/avm-eac_github_base0/spec/spec_helper.rb +4 -0
  34. data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +1 -1
  35. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/gitolite.rb +3 -1
  36. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/version.rb +1 -1
  37. data/sub/avm-tools/avm-tools.gemspec +1 -1
  38. data/sub/avm-tools/lib/avm/tools/runner/application/info.rb +2 -1
  39. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  40. metadata +44 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8e227d70bad6dcda0603a56c57f8114622444ff56a3ddf61ff742be65ba94992
4
- data.tar.gz: fce72f0ff11ad9c7cf4287351015bb8337a5b56af81d6edd386d13f821ff68ea
3
+ metadata.gz: 90311d99a8fde34e9e085138cecf3eb3eaec19cd6db5df22b900ca73a058a568
4
+ data.tar.gz: '082caa63292c671845f74e8a913054ad212894aa117ddc7d3f7cd2ff65885bdb'
5
5
  SHA512:
6
- metadata.gz: 553f7235db1e49048bb2444554ed9f4a4c3cc2281a19ee054196f7bd4f6fbbc71951a4a87fe5a8bc09dc4b6b6165d59ffee2df92b70998e1d8f17fc84974eb52
7
- data.tar.gz: f1c8903587ee95c26bf744c95f9704c7ffb27f75391e26f83e95544377655b36714029bae0e0b5232c230ba35752748169e08855d1f020e99478f72f148dfe38
6
+ metadata.gz: 392a2ae0e2f9688a644ae606bd2b6e8c82e06a2aa0e9f30138972866f15f29dd045533b5ebd59303b2613ce43bebdfc3903535727a5e2f2b48c410c5a6b04168
7
+ data.tar.gz: 99306a1b0f26497d5bebb657c766c912acc347be451a23eea152c0e73f9f5b9e1fe31c39dc1eed32faebbeebf1df39f6cf47d86759b26c902222b217c1c5743c
data/Gemfile.lock CHANGED
@@ -1,23 +1,24 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.78.0)
5
- avm (~> 0.80)
4
+ eac_tools (0.79.0)
5
+ avm (~> 0.81)
6
6
  avm-eac_asciidoctor_base0 (~> 0.19)
7
7
  avm-eac_generic_base0 (~> 0.12, >= 0.12.1)
8
+ avm-eac_github_base0 (~> 0.2)
8
9
  avm-eac_latex_base0 (~> 0.3, >= 0.3.1)
9
10
  avm-eac_php_base0 (~> 0.4, >= 0.4.2)
10
11
  avm-eac_postgresql_base0 (~> 0.5, >= 0.5.2)
11
12
  avm-eac_python_base0 (~> 0.2, >= 0.2.1)
12
13
  avm-eac_rails_base0 (~> 0.10, >= 0.10.3)
13
14
  avm-eac_rails_base1 (~> 0.9, >= 0.9.3)
14
- avm-eac_redmine_base0 (~> 0.21, >= 0.21.1)
15
+ avm-eac_redmine_base0 (~> 0.21, >= 0.21.2)
15
16
  avm-eac_redmine_plugin_base0 (~> 0.4)
16
17
  avm-eac_ruby_base1 (~> 0.32, >= 0.32.1)
17
18
  avm-eac_webapp_base0 (~> 0.18, >= 0.18.2)
18
19
  avm-eac_wordpress_base0 (~> 0.3, >= 0.3.1)
19
20
  avm-git (~> 0.13, >= 0.13.4)
20
- avm-tools (~> 0.156)
21
+ avm-tools (~> 0.157)
21
22
  eac_ruby_utils (~> 0.119, >= 0.119.2)
22
23
 
23
24
  PATH
@@ -37,6 +38,14 @@ PATH
37
38
  avm (~> 0.79)
38
39
  eac_ruby_utils (~> 0.119, >= 0.119.2)
39
40
 
41
+ PATH
42
+ remote: sub/avm-eac_github_base0
43
+ specs:
44
+ avm-eac_github_base0 (0.2.0)
45
+ avm (~> 0.81)
46
+ eac_rest (~> 0.10)
47
+ eac_ruby_utils (~> 0.119, >= 0.119.2)
48
+
40
49
  PATH
41
50
  remote: sub/avm-eac_latex_base0
42
51
  specs:
@@ -86,8 +95,8 @@ PATH
86
95
  PATH
87
96
  remote: sub/avm-eac_redmine_base0
88
97
  specs:
89
- avm-eac_redmine_base0 (0.21.1)
90
- avm (~> 0.80)
98
+ avm-eac_redmine_base0 (0.21.2)
99
+ avm (~> 0.81)
91
100
  avm-eac_generic_base0 (~> 0.12, >= 0.12.1)
92
101
  avm-eac_rails_base1 (~> 0.9, >= 0.9.3)
93
102
  avm-eac_ubuntu_base0 (~> 0.5)
@@ -163,9 +172,9 @@ PATH
163
172
  PATH
164
173
  remote: sub/avm-tools
165
174
  specs:
166
- avm-tools (0.156.0)
175
+ avm-tools (0.157.0)
167
176
  aranha-parsers (~> 0.21)
168
- avm (~> 0.80)
177
+ avm (~> 0.81)
169
178
  avm-eac_ruby_base1 (~> 0.32, >= 0.32.1)
170
179
  avm-eac_ubuntu_base0 (~> 0.5)
171
180
  avm-files (~> 0.6, >= 0.6.2)
@@ -181,7 +190,7 @@ PATH
181
190
  PATH
182
191
  remote: sub/avm
183
192
  specs:
184
- avm (0.80.0)
193
+ avm (0.81.0)
185
194
  aranha-parsers (~> 0.21)
186
195
  eac_cli (~> 0.38)
187
196
  eac_config (~> 0.14, >= 0.14.1)
@@ -268,10 +277,10 @@ GEM
268
277
  eac_cli (~> 0.35)
269
278
  eac_fs (~> 0.16)
270
279
  eac_ruby_utils (~> 0.117)
271
- eac_ruby_gem_support (0.8.1)
280
+ eac_ruby_gem_support (0.8.2)
272
281
  eac_ruby_utils (~> 0.119, >= 0.119.2)
273
282
  rspec (~> 3.12)
274
- rubocop (~> 1.56, >= 1.56.4)
283
+ rubocop (~> 1.57, >= 1.57.1)
275
284
  rubocop-rails (~> 2.21, >= 2.21.2)
276
285
  rubocop-rspec (~> 2.24, >= 2.24.1)
277
286
  eac_ruby_utils (0.119.2)
@@ -343,8 +352,7 @@ GEM
343
352
  diff-lcs (>= 1.2.0, < 2.0)
344
353
  rspec-support (~> 3.12.0)
345
354
  rspec-support (3.12.1)
346
- rubocop (1.57.1)
347
- base64 (~> 0.1.1)
355
+ rubocop (1.57.2)
348
356
  json (~> 2.3)
349
357
  language_server-protocol (>= 3.17.0)
350
358
  parallel (~> 1.10)
@@ -355,18 +363,18 @@ GEM
355
363
  rubocop-ast (>= 1.28.1, < 2.0)
356
364
  ruby-progressbar (~> 1.7)
357
365
  unicode-display_width (>= 2.4.0, < 3.0)
358
- rubocop-ast (1.29.0)
366
+ rubocop-ast (1.30.0)
359
367
  parser (>= 3.2.1.0)
360
368
  rubocop-capybara (2.19.0)
361
369
  rubocop (~> 1.41)
362
370
  rubocop-factory_bot (2.24.0)
363
371
  rubocop (~> 1.33)
364
- rubocop-rails (2.21.2)
372
+ rubocop-rails (2.22.1)
365
373
  activesupport (>= 4.2.0)
366
374
  rack (>= 1.1)
367
375
  rubocop (>= 1.33.0, < 2.0)
368
- rubocop-rspec (2.24.1)
369
- rubocop (~> 1.33)
376
+ rubocop-rspec (2.25.0)
377
+ rubocop (~> 1.40)
370
378
  rubocop-capybara (~> 2.17)
371
379
  rubocop-factory_bot (~> 2.22)
372
380
  ruby-filemagic (0.7.3)
@@ -385,6 +393,7 @@ DEPENDENCIES
385
393
  avm!
386
394
  avm-eac_asciidoctor_base0!
387
395
  avm-eac_generic_base0!
396
+ avm-eac_github_base0!
388
397
  avm-eac_latex_base0!
389
398
  avm-eac_php_base0!
390
399
  avm-eac_postgresql_base0!
@@ -407,4 +416,4 @@ DEPENDENCIES
407
416
  eac_tools!
408
417
 
409
418
  BUNDLED WITH
410
- 2.3.26
419
+ 2.4.19
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.78.0'
4
+ VERSION = '0.79.0'
5
5
  end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module ApplicationScms
7
+ class Base
8
+ class << self
9
+ # @return [String]
10
+ def type_name
11
+ name.gsub(/#{Regexp.quote('::ApplicationScms::Base')}$/, '').demodulize
12
+ end
13
+ end
14
+
15
+ # !method initialize(url)
16
+ # @param url [Addressable::URI]
17
+ common_constructor :url do
18
+ self.url = url.to_uri
19
+ end
20
+ delegate :type_name, to: :class
21
+
22
+ # @return [String]
23
+ def to_s
24
+ "#{type_name}[#{url}]"
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module ApplicationScms
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/registry'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Applications
8
+ class Base
9
+ module Scm
10
+ common_concern do
11
+ uri_components_entries_values 'scm', %w[repos_path type]
12
+ end
13
+
14
+ # @return [Avm::ApplicationScms::Base]
15
+ def scm
16
+ @scm ||= ::Avm::Registry.application_scms.detect(scm_type, scm_url)
17
+ end
18
+
19
+ # @param value [String]
20
+ # @return [String]
21
+ def scm_repos_path_inherited_value_proc(value)
22
+ value.to_pathname.join(id).to_path
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -7,11 +7,18 @@ module Avm
7
7
  module Applications
8
8
  class Base
9
9
  enable_simple_cache
10
- require_sub __FILE__, include_modules: true
11
10
  include ::Avm::Entries::Base
12
11
 
13
12
  AVM_TYPE = 'Application'
14
13
 
14
+ class << self
15
+ # @param id [String]
16
+ # @return [Avm::Applications::Base]
17
+ def by_id(id)
18
+ new(id)
19
+ end
20
+ end
21
+
15
22
  common_constructor :id do
16
23
  self.id = id.to_s
17
24
  end
@@ -23,6 +30,8 @@ module Avm
23
30
  def instance(suffix)
24
31
  stereotype.instance_class.new(self, suffix)
25
32
  end
33
+
34
+ require_sub __FILE__, include_modules: true
26
35
  end
27
36
  end
28
37
  end
@@ -18,8 +18,23 @@ module Avm
18
18
  end
19
19
  end
20
20
 
21
+ # @param provider_id [String]
22
+ # @return [Avm::Entries::Base]
23
+ def other_entries_provider(provider_id)
24
+ other_entries_provider_class.by_id(provider_id)
25
+ end
26
+
27
+ # @return [Class]
28
+ def other_entries_provider_class
29
+ [::Avm::Instances::Base, ::Avm::Applications::Base].each do |klass|
30
+ return klass if entries_provider.is_a?(klass)
31
+ end
32
+
33
+ raise "No provider class found for \"#{entries_provider}\""
34
+ end
35
+
21
36
  def other_entry_value(instance_id)
22
- ::Avm::Instances::Base.by_id(instance_id).read_entry_optional(target_entry_suffix)
37
+ other_entries_provider(instance_id).read_entry_optional(target_entry_suffix)
23
38
  end
24
39
 
25
40
  def self_entry_value
@@ -13,8 +13,9 @@ module Avm
13
13
  common_constructor :uri_component_entry_value
14
14
  delegate :component_entry_path, :entries_provider, to: :uri_component_entry_value
15
15
 
16
+ # @return [Symbol]
16
17
  def default_value_method_name
17
- "#{component_entry_path.parts.join('_').variableize}_default_value"
18
+ component_entry_path.default_method_name
18
19
  end
19
20
 
20
21
  def result
@@ -28,8 +28,9 @@ module Avm
28
28
  ->(value) { entries_provider.send(inherited_value_block_method_name, value) }
29
29
  end
30
30
 
31
+ # @return [Symbol]
31
32
  def inherited_value_block_method_name
32
- "#{component_entry_path.parts.join('_').variableize}_inherited_value_proc".to_sym
33
+ component_entry_path.inherited_block_method_name
33
34
  end
34
35
  end
35
36
  end
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'avm/entries/uri_builder'
4
+ require 'avm/patches/eac_config/entry_path'
4
5
  require 'eac_ruby_utils/core_ext'
5
6
 
6
7
  module Avm
@@ -10,14 +11,8 @@ module Avm
10
11
  class GenericComponent
11
12
  common_constructor :owner, :component
12
13
  delegate :entries_provider_class, :prefix, to: :owner
13
-
14
- def auto_method_name
15
- ['auto', component_method_name].join('_')
16
- end
17
-
18
- def component_method_name
19
- [prefix, component].join('_')
20
- end
14
+ delegate :auto_method_name, :get_method_name, :get_optional_method_name,
15
+ to: :entry_key_path
21
16
 
22
17
  def define_auto_method
23
18
  outer_self = self
@@ -48,22 +43,12 @@ module Avm
48
43
  ::EacConfig::EntryPath.assert([prefix, component])
49
44
  end
50
45
 
51
- # @return [String]
52
- def get_method_name # rubocop:disable Naming/AccessorMethodName
53
- component_method_name
54
- end
55
-
56
- # @return [String]
57
- def get_optional_method_name # rubocop:disable Naming/AccessorMethodName
58
- get_method_name + '_optional'
59
- end
60
-
61
46
  def id_component
62
47
  @id_component ||= owner.component_factory('id')
63
48
  end
64
49
 
65
50
  def inherited_value_proc_name
66
- [component_method_name, 'inherited_value_proc'].join('_')
51
+ entry_key_path.inherited_block_method_name
67
52
  end
68
53
 
69
54
  def setup
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_config/entry_path'
4
+
5
+ module EacConfig
6
+ class EntryPath
7
+ # @return [Symbol]
8
+ def auto_method_name
9
+ method_name('auto_', '')
10
+ end
11
+
12
+ # @return [Symbol]
13
+ def default_method_name
14
+ method_name('', '_default_value')
15
+ end
16
+
17
+ # @return [Symbol]
18
+ def get_method_name # rubocop:disable Naming/AccessorMethodName
19
+ method_name('', '')
20
+ end
21
+
22
+ # @return [Symbol]
23
+ def get_optional_method_name # rubocop:disable Naming/AccessorMethodName
24
+ method_name('', '_optional')
25
+ end
26
+
27
+ # @return [Symbol]
28
+ def inherited_block_method_name
29
+ method_name('', '_inherited_value_proc')
30
+ end
31
+
32
+ # @return [String]
33
+ def variableize
34
+ parts.join('_')
35
+ end
36
+
37
+ private
38
+
39
+ # @param before [String]
40
+ # @param after [String]
41
+ # @return [Symbol]
42
+ def method_name(before, after)
43
+ "#{before}#{variableize}#{after}".to_sym
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/registry/from_gems'
4
+
5
+ module Avm
6
+ module Registry
7
+ class ApplicationScms < ::Avm::Registry::FromGems
8
+ def class_detect(klass, detect_args)
9
+ return nil unless klass.type_name == detect_args[0]
10
+
11
+ klass.new(*detect_args[1..-1])
12
+ end
13
+ end
14
+ end
15
+ end
@@ -7,9 +7,9 @@ module Avm
7
7
  module Registry
8
8
  require_sub __FILE__
9
9
  enable_listable
10
- lists.add_symbol :category, :applications, :application_stereotypes, :config_objects,
11
- :file_formats, :instances, :launcher_stereotypes, :runners, :scms,
12
- :source_generators, :sources
10
+ lists.add_symbol :category, :applications, :application_scms, :application_stereotypes,
11
+ :config_objects, :file_formats, :instances, :launcher_stereotypes, :runners,
12
+ :scms, :source_generators, :sources
13
13
 
14
14
  class << self
15
15
  enable_simple_cache
@@ -13,8 +13,8 @@ require 'eac_ruby_utils/core_ext'
13
13
  context "when a auto value is requested for \"#{instance_id}.#{input}\"" do
14
14
  let(:instance) { described_class.by_id(instance_id) }
15
15
 
16
- it ".read_entry should return \"#{expected}\"" do
17
- expect(instance.read_entry(input)).to eq(expected)
16
+ it ".entry('#{input}').value should return \"#{expected}\"" do
17
+ expect(instance.entry(input).value).to eq(expected)
18
18
  end
19
19
  end
20
20
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.80.0'
4
+ VERSION = '0.81.0'
5
5
  end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/applications/base'
4
+
5
+ RSpec.describe ::Avm::Applications::Base do
6
+ include_examples 'entries_values', __FILE__, {
7
+ 'app0' => {
8
+ 'name' => 'Application 0',
9
+ 'organization' => nil,
10
+ 'scm.id' => 'app1',
11
+ 'scm.type' => 'ScmX',
12
+ 'scm.url' => 'http://nowhere.net/anypath',
13
+ 'scm.repos_path' => 'mygroup/app0'
14
+ },
15
+ 'app1' => {
16
+ 'name' => nil,
17
+ 'organization' => 'org1',
18
+ 'scm.id' => nil,
19
+ 'scm.type' => 'ScmX',
20
+ 'scm.url' => 'http://nowhere.net/anypath',
21
+ 'scm.repos_path' => 'mygroup'
22
+ }
23
+ }
24
+
25
+ # @return [Avm::Entries::Base]
26
+ def build_instance(instance_id)
27
+ described_class.new(instance_id)
28
+ end
29
+ end
@@ -0,0 +1,11 @@
1
+ ---
2
+ app0:
3
+ name: Application 0
4
+ scm:
5
+ id: app1
6
+ app1:
7
+ organization: org1
8
+ scm:
9
+ url: http://nowhere.net/anypath
10
+ type: ScmX
11
+ repos_path: mygroup
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/patches/eac_config/entry_path'
4
+
5
+ ::RSpec.describe ::EacConfig::EntryPath do
6
+ {
7
+ 'install.path' => {
8
+ auto: 'auto_install_path',
9
+ default: 'install_path_default_value',
10
+ get: 'install_path',
11
+ get_optional: 'install_path_optional',
12
+ inherited_block: 'install_path_inherited_value_proc'
13
+ }
14
+ }.each do |instance_path, test_data|
15
+ context "when path is \"#{instance_path}\"" do
16
+ let(:instance) { described_class.assert(instance_path) }
17
+
18
+ test_data.each do |method_prefix, expected_value|
19
+ method_name = "#{method_prefix}_method_name"
20
+ context "when method name is \"#{method_name}\"" do
21
+ it do
22
+ expect(instance.send(method_name)).to eq(expected_value.to_sym)
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ source 'https://rubygems.org'
4
+
5
+ gemspec
6
+
7
+ local_gemfile = ::File.join(::File.dirname(__FILE__), 'Gemfile.local')
8
+ eval_gemfile local_gemfile if ::File.exist?(local_gemfile)
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'avm/eac_github_base0/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'avm-eac_github_base0'
9
+ s.version = Avm::EacGithubBase0::VERSION
10
+ s.authors = ['Put here the authors']
11
+ s.summary = 'Put here de description.'
12
+
13
+ s.files = Dir['{lib}/**/*']
14
+ s.required_ruby_version = '>= 2.7'
15
+
16
+ s.add_dependency 'avm', '~> 0.81'
17
+ s.add_dependency 'eac_rest', '~> 0.10'
18
+ s.add_dependency 'eac_ruby_utils', '~> 0.119', '>= 0.119.2'
19
+
20
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.8', '>= 0.8.2'
21
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_rest/entity'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacGithubBase0
9
+ class Api < ::EacRest::Api
10
+ class Entity < ::EacRest::Entity
11
+ def all_from_list(entity_class, url_suffix)
12
+ r = []
13
+ while url_suffix.present?
14
+ response = api.request_json(url_suffix).response
15
+ r += response.body_data_or_raise
16
+ .map { |child_data| child_entity(entity_class, child_data) }
17
+ url_suffix = response.link('next')
18
+ end
19
+ r
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'avm/eac_github_base0/api/repository'
5
+ require 'eac_rest/api'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module Avm
9
+ module EacGithubBase0
10
+ class Api < ::EacRest::Api
11
+ class Organization < ::Avm::EacGithubBase0::Api::Entity
12
+ # @return [Array<Avm::EacGithubBase0::Api::Repository>]
13
+ def repositories
14
+ all_from_list(::Avm::EacGithubBase0::Api::Repository, "/orgs/#{id}/repos")
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'eac_rest/api'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacGithubBase0
9
+ class Api < ::EacRest::Api
10
+ class Repository < ::Avm::EacGithubBase0::Api::Entity
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/api/entity'
4
+ require 'avm/eac_github_base0/api/organization'
5
+ require 'eac_rest/api'
6
+ require 'eac_ruby_utils/core_ext'
7
+
8
+ module Avm
9
+ module EacGithubBase0
10
+ class Api < ::EacRest::Api
11
+ class Root < ::Avm::EacGithubBase0::Api::Entity
12
+ # @param id [String]
13
+ # @return [Avm::EacGithubBase0::Api::Organization]
14
+ def organization(id)
15
+ child_entity(::Avm::EacGithubBase0::Api::Organization, id)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacGithubBase0
8
+ class Api < ::EacRest::Api
9
+ DEFAULT_ROOT_URL = 'https://api.github.com'
10
+
11
+ def initialize(root_url = DEFAULT_ROOT_URL)
12
+ super(root_url)
13
+ end
14
+
15
+ require_sub __FILE__
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/application_scms/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacGithubBase0
8
+ module ApplicationScms
9
+ class Base < ::Avm::ApplicationScms::Base
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacGithubBase0
7
+ module ApplicationScms
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacGithubBase0
5
+ VERSION = '0.2.0'
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacGithubBase0
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_github_base0/application_scms/base'
4
+
5
+ ::RSpec.describe ::Avm::EacGithubBase0::ApplicationScms::Base do
6
+ include_examples 'in_avm_registry', 'application_scms'
7
+ end
@@ -0,0 +1,3 @@
1
+ # frozen_string_literal: true
2
+
3
+ ::EacRubyUtils::Rspec.default_setup.describe_rubocop
@@ -0,0 +1,4 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/rspec/default_setup'
4
+ ::EacRubyUtils::Rspec.default_setup_create(::File.expand_path('..', __dir__))
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
14
14
 
15
15
  s.required_ruby_version = '>= 2.7.0'
16
16
 
17
- s.add_dependency 'avm', '~> 0.80'
17
+ s.add_dependency 'avm', '~> 0.81'
18
18
  s.add_dependency 'avm-eac_generic_base0', '~> 0.12', '>= 0.12.1'
19
19
  s.add_dependency 'avm-eac_rails_base1', '~> 0.9', '>= 0.9.3'
20
20
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.5'
@@ -16,6 +16,7 @@ module Avm
16
16
 
17
17
  common_concern do
18
18
  uri_components_entries_values GITOLITE_ENTRY_KEYS_PREFIX
19
+ undef_method :gitolite_path_inherited_value_proc
19
20
  end
20
21
 
21
22
  # @return [Avm::Instances::Data::FilesUnit]
@@ -28,8 +29,9 @@ module Avm
28
29
  DEFAULT_HOSTNAME
29
30
  end
30
31
 
32
+ # @return [String]
31
33
  def gitolite_path_default_value
32
- read_entry_optional([GITOLITE_ENTRY_KEYS_PREFIX, 'username']).if_present do |v|
34
+ gitolite_username_optional.if_present do |v|
33
35
  ::File.join(DEFAULT_PATH_PARENT, v)
34
36
  end
35
37
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRedmineBase0
5
- VERSION = '0.21.1'
5
+ VERSION = '0.21.2'
6
6
  end
7
7
  end
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
17
17
  s.required_ruby_version = '>= 2.7.0'
18
18
 
19
19
  s.add_dependency 'aranha-parsers', '~> 0.21'
20
- s.add_dependency 'avm', '~> 0.80'
20
+ s.add_dependency 'avm', '~> 0.81'
21
21
  s.add_dependency 'avm-eac_ruby_base1', '~> 0.32', '>= 0.32.1'
22
22
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.5'
23
23
  s.add_dependency 'avm-files', '~> 0.6', '>= 0.6.2'
@@ -10,7 +10,8 @@ module Avm
10
10
  APPLICATION_PROPERTIES = {
11
11
  id: 'ID',
12
12
  name: 'Name',
13
- organization: 'Organization'
13
+ organization: 'Organization',
14
+ scm: 'SCM'
14
15
  }.freeze
15
16
 
16
17
  runner_with :help, :output_item do
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.156.0'
5
+ VERSION = '0.157.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.78.0
4
+ version: 0.79.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-10-24 00:00:00.000000000 Z
11
+ date: 2023-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.80'
19
+ version: '0.81'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.80'
26
+ version: '0.81'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: avm-eac_asciidoctor_base0
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,6 +58,20 @@ dependencies:
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
60
  version: 0.12.1
61
+ - !ruby/object:Gem::Dependency
62
+ name: avm-eac_github_base0
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.2'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0.2'
61
75
  - !ruby/object:Gem::Dependency
62
76
  name: avm-eac_latex_base0
63
77
  requirement: !ruby/object:Gem::Requirement
@@ -187,7 +201,7 @@ dependencies:
187
201
  version: '0.21'
188
202
  - - ">="
189
203
  - !ruby/object:Gem::Version
190
- version: 0.21.1
204
+ version: 0.21.2
191
205
  type: :runtime
192
206
  prerelease: false
193
207
  version_requirements: !ruby/object:Gem::Requirement
@@ -197,7 +211,7 @@ dependencies:
197
211
  version: '0.21'
198
212
  - - ">="
199
213
  - !ruby/object:Gem::Version
200
- version: 0.21.1
214
+ version: 0.21.2
201
215
  - !ruby/object:Gem::Dependency
202
216
  name: avm-eac_redmine_plugin_base0
203
217
  requirement: !ruby/object:Gem::Requirement
@@ -298,14 +312,14 @@ dependencies:
298
312
  requirements:
299
313
  - - "~>"
300
314
  - !ruby/object:Gem::Version
301
- version: '0.156'
315
+ version: '0.157'
302
316
  type: :runtime
303
317
  prerelease: false
304
318
  version_requirements: !ruby/object:Gem::Requirement
305
319
  requirements:
306
320
  - - "~>"
307
321
  - !ruby/object:Gem::Version
308
- version: '0.156'
322
+ version: '0.157'
309
323
  - !ruby/object:Gem::Dependency
310
324
  name: eac_ruby_utils
311
325
  requirement: !ruby/object:Gem::Requirement
@@ -437,6 +451,20 @@ files:
437
451
  - sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/sources/base_spec.rb
438
452
  - sub/avm-eac_generic_base0/spec/rubocop_spec.rb
439
453
  - sub/avm-eac_generic_base0/spec/spec_helper.rb
454
+ - sub/avm-eac_github_base0/Gemfile
455
+ - sub/avm-eac_github_base0/avm-eac_github_base0.gemspec
456
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0.rb
457
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/api.rb
458
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/entity.rb
459
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/organization.rb
460
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/repository.rb
461
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/api/root.rb
462
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/application_scms.rb
463
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/application_scms/base.rb
464
+ - sub/avm-eac_github_base0/lib/avm/eac_github_base0/version.rb
465
+ - sub/avm-eac_github_base0/spec/avm/eac_github_base0/application_scms/base_spec.rb
466
+ - sub/avm-eac_github_base0/spec/rubocop_spec.rb
467
+ - sub/avm-eac_github_base0/spec/spec_helper.rb
440
468
  - sub/avm-eac_latex_base0/Gemfile
441
469
  - sub/avm-eac_latex_base0/avm-eac_latex_base0.gemspec
442
470
  - sub/avm-eac_latex_base0/lib/avm/eac_latex_base0.rb
@@ -1115,6 +1143,8 @@ files:
1115
1143
  - sub/avm/Gemfile
1116
1144
  - sub/avm/avm.gemspec
1117
1145
  - sub/avm/lib/avm.rb
1146
+ - sub/avm/lib/avm/application_scms.rb
1147
+ - sub/avm/lib/avm/application_scms/base.rb
1118
1148
  - sub/avm/lib/avm/application_stereotypes.rb
1119
1149
  - sub/avm/lib/avm/application_stereotypes/base.rb
1120
1150
  - sub/avm/lib/avm/applications.rb
@@ -1124,6 +1154,7 @@ files:
1124
1154
  - sub/avm/lib/avm/applications/base/naming.rb
1125
1155
  - sub/avm/lib/avm/applications/base/organization.rb
1126
1156
  - sub/avm/lib/avm/applications/base/publishing.rb
1157
+ - sub/avm/lib/avm/applications/base/scm.rb
1127
1158
  - sub/avm/lib/avm/applications/base/stereotype.rb
1128
1159
  - sub/avm/lib/avm/data/callbacks.rb
1129
1160
  - sub/avm/lib/avm/data/clearer.rb
@@ -1222,8 +1253,10 @@ files:
1222
1253
  - sub/avm/lib/avm/launcher/publish/check_result.rb
1223
1254
  - sub/avm/lib/avm/launcher/stereotype.rb
1224
1255
  - sub/avm/lib/avm/launcher_stereotypes.rb
1256
+ - sub/avm/lib/avm/patches/eac_config/entry_path.rb
1225
1257
  - sub/avm/lib/avm/path_string.rb
1226
1258
  - sub/avm/lib/avm/registry.rb
1259
+ - sub/avm/lib/avm/registry/application_scms.rb
1227
1260
  - sub/avm/lib/avm/registry/application_stereotypes.rb
1228
1261
  - sub/avm/lib/avm/registry/application_stereotypes/build_available.rb
1229
1262
  - sub/avm/lib/avm/registry/application_stereotypes/stereotype_builder.rb
@@ -1312,6 +1345,8 @@ files:
1312
1345
  - sub/avm/lib/avm/version_number.rb
1313
1346
  - sub/avm/lib/avm/with/application_stereotype.rb
1314
1347
  - sub/avm/lib/avm/with/extra_subcommands.rb
1348
+ - sub/avm/spec/lib/avm/applications/base/entries_spec.rb
1349
+ - sub/avm/spec/lib/avm/applications/base/entries_spec_files/config.yml
1315
1350
  - sub/avm/spec/lib/avm/applications/base_spec.rb
1316
1351
  - sub/avm/spec/lib/avm/applications/base_spec_fixture.yml
1317
1352
  - sub/avm/spec/lib/avm/file_formats/base_spec.rb
@@ -1325,6 +1360,7 @@ files:
1325
1360
  - sub/avm/spec/lib/avm/launcher/instances/base_spec_files/projects/ruby_gem_stub/lib/ruby_gem_stub/version.rb
1326
1361
  - sub/avm/spec/lib/avm/launcher/instances/base_spec_files/projects/ruby_gem_stub/ruby_gem_stub.gemspec
1327
1362
  - sub/avm/spec/lib/avm/launcher/instances/base_spec_files/settings.yaml
1363
+ - sub/avm/spec/lib/avm/patches/eac_config/entry_path_spec.rb
1328
1364
  - sub/avm/spec/lib/avm/scms/auto_commit/file_resource_name_spec.rb
1329
1365
  - sub/avm/spec/lib/avm/scms/base_spec.rb
1330
1366
  - sub/avm/spec/lib/avm/sources/base_spec.rb