eac_tools 0.11.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +21 -21
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/avm.gemspec +2 -2
  5. data/sub/avm/lib/avm/application_stereotypes/base.rb +11 -1
  6. data/sub/avm/lib/avm/instances/base/auto_values/install.rb +48 -0
  7. data/sub/avm/lib/avm/instances/base/auto_values.rb +1 -1
  8. data/sub/avm/lib/avm/instances/base.rb +4 -4
  9. data/sub/avm/lib/avm/instances/entry_keys.rb +7 -6
  10. data/sub/avm/lib/avm/instances.rb +3 -2
  11. data/sub/avm/lib/avm/registry/application_stereotypes/build_available.rb +9 -6
  12. data/sub/avm/lib/avm/registry/application_stereotypes/stereotype_builder.rb +8 -5
  13. data/sub/avm/lib/avm/registry/source_generators.rb +16 -0
  14. data/sub/avm/lib/avm/registry.rb +2 -1
  15. data/sub/avm/lib/avm/scms/base.rb +2 -2
  16. data/sub/avm/lib/avm/source_generators/base.rb +29 -0
  17. data/sub/avm/lib/avm/source_generators.rb +9 -0
  18. data/sub/avm/lib/avm/sources/base.rb +4 -4
  19. data/sub/avm/lib/avm/version.rb +1 -1
  20. data/sub/avm/lib/avm/with/application_stereotype.rb +35 -0
  21. data/sub/avm/lib/avm/with/extra_subcommands.rb +44 -0
  22. data/sub/avm/spec/lib/avm/instances/base_spec.rb +3 -3
  23. data/sub/avm/spec/lib/avm/instances/base_spec_configs_storage.yml +1 -1
  24. data/sub/avm-eac_rails_base0/avm-eac_rails_base0.gemspec +3 -3
  25. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/source_generators/base.rb +13 -0
  26. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/version.rb +1 -1
  27. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Gemfile +11 -0
  28. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Rakefile +8 -0
  29. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/config/manifest.js +3 -0
  30. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/javascripts/application.js +1 -0
  31. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/stylesheets/application.scss +1 -0
  32. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/application_controller.rb +4 -0
  33. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/welcome_controller.rb +5 -0
  34. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/views/welcome/index.html.erb +1 -0
  35. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/bundle +5 -0
  36. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rails +11 -0
  37. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rake +11 -0
  38. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/yarn +11 -0
  39. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/application.rb +11 -0
  40. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/boot.rb +5 -0
  41. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/cable.yml +8 -0
  42. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/credentials.yml.enc +1 -0
  43. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/environment.rb +7 -0
  44. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/puma.rb +39 -0
  45. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/routes.rb +5 -0
  46. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/spring.rb +8 -0
  47. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config.ru +7 -0
  48. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/db/schema.rb +1 -0
  49. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability.rb +20 -0
  50. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability_mapping.rb +10 -0
  51. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/public/favicon.ico +0 -0
  52. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/code/rubocop_spec.rb +3 -0
  53. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/spec_helper.rb +8 -0
  54. data/sub/avm-eac_rails_base1/avm-eac_rails_base1.gemspec +3 -2
  55. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/systemd_unit.rb +1 -1
  56. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/version.rb +1 -1
  57. data/sub/avm-tools/README.textile +0 -11
  58. data/sub/avm-tools/avm-tools.gemspec +1 -2
  59. data/sub/avm-tools/lib/avm/tools/runner/source_generate.rb +45 -0
  60. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  61. data/sub/eac_config/eac_config.gemspec +1 -1
  62. data/sub/eac_config/lib/eac_config/entry_path.rb +15 -4
  63. data/sub/eac_config/lib/eac_config/version.rb +1 -1
  64. data/sub/eac_ruby_utils/lib/eac_ruby_utils/regexp_parser.rb +5 -0
  65. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/base.rb +67 -0
  66. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/sub_file.rb +68 -0
  67. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb +2 -125
  68. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  69. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/{require_sub_spec → require_sub/base_spec}/stubbed_module_a.rb +0 -0
  70. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/{require_sub_spec → require_sub/base_spec}/stubbed_not_module.rb +0 -0
  71. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/{require_sub_spec.rb → require_sub/base_spec.rb} +1 -1
  72. metadata +56 -16
  73. data/sub/avm/lib/avm/instances/base/auto_values/access.rb +0 -40
  74. data/sub/avm/lib/avm/with_application_stereotype.rb +0 -23
  75. data/sub/avm/lib/avm/with_dynamic_runners.rb +0 -42
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRubyUtils
4
- VERSION = '0.96.0'
4
+ VERSION = '0.97.0'
5
5
  end
@@ -5,7 +5,7 @@ require 'eac_ruby_utils/require_sub'
5
5
  class RequireSubStubClass
6
6
  end
7
7
 
8
- RSpec.describe ::EacRubyUtils::RequireSub do
8
+ RSpec.describe ::EacRubyUtils::RequireSub::Base do
9
9
  let(:instance) { described_class.new(__FILE__, base: RequireSubStubClass, include_modules: true) }
10
10
 
11
11
  before do
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.11.0
4
+ version: 0.13.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: 2022-07-26 00:00:00.000000000 Z
11
+ date: 2022-08-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm-eac_generic_base0
@@ -30,14 +30,20 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.5'
33
+ version: '0.6'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 0.6.1
34
37
  type: :runtime
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
41
  - - "~>"
39
42
  - !ruby/object:Gem::Version
40
- version: '0.5'
43
+ version: '0.6'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 0.6.1
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: avm-eac_rails_base1
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -47,7 +53,7 @@ dependencies:
47
53
  version: '0.4'
48
54
  - - ">="
49
55
  - !ruby/object:Gem::Version
50
- version: 0.4.1
56
+ version: 0.4.2
51
57
  type: :runtime
52
58
  prerelease: false
53
59
  version_requirements: !ruby/object:Gem::Requirement
@@ -57,7 +63,7 @@ dependencies:
57
63
  version: '0.4'
58
64
  - - ">="
59
65
  - !ruby/object:Gem::Version
60
- version: 0.4.1
66
+ version: 0.4.2
61
67
  - !ruby/object:Gem::Dependency
62
68
  name: avm-eac_redmine_base0
63
69
  requirement: !ruby/object:Gem::Requirement
@@ -106,28 +112,28 @@ dependencies:
106
112
  requirements:
107
113
  - - "~>"
108
114
  - !ruby/object:Gem::Version
109
- version: '0.125'
115
+ version: '0.127'
110
116
  type: :runtime
111
117
  prerelease: false
112
118
  version_requirements: !ruby/object:Gem::Requirement
113
119
  requirements:
114
120
  - - "~>"
115
121
  - !ruby/object:Gem::Version
116
- version: '0.125'
122
+ version: '0.127'
117
123
  - !ruby/object:Gem::Dependency
118
124
  name: eac_ruby_utils
119
125
  requirement: !ruby/object:Gem::Requirement
120
126
  requirements:
121
127
  - - "~>"
122
128
  - !ruby/object:Gem::Version
123
- version: '0.96'
129
+ version: '0.97'
124
130
  type: :runtime
125
131
  prerelease: false
126
132
  version_requirements: !ruby/object:Gem::Requirement
127
133
  requirements:
128
134
  - - "~>"
129
135
  - !ruby/object:Gem::Version
130
- version: '0.96'
136
+ version: '0.97'
131
137
  - !ruby/object:Gem::Dependency
132
138
  name: eac_ruby_gem_support
133
139
  requirement: !ruby/object:Gem::Requirement
@@ -175,6 +181,7 @@ files:
175
181
  - sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instance.rb
176
182
  - sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/runners.rb
177
183
  - sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/runners/base.rb
184
+ - sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/source_generators/base.rb
178
185
  - sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/sources/base.rb
179
186
  - sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/version.rb
180
187
  - sub/avm-eac_rails_base0/spec/lib/avm/eac_rails_base0/apache_host_spec.rb
@@ -186,6 +193,33 @@ files:
186
193
  - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/apache_path/extra_content.conf
187
194
  - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/deploy/config/database.yml.template
188
195
  - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/deploy/config/envvars.d/email.yml.template
196
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Gemfile
197
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Rakefile
198
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/config/manifest.js
199
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/javascripts/application.js
200
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/stylesheets/application.scss
201
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/application_controller.rb
202
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/welcome_controller.rb
203
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/views/welcome/index.html.erb
204
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/bundle
205
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rails
206
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rake
207
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/yarn
208
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config.ru
209
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/application.rb
210
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/boot.rb
211
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/cable.yml
212
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/credentials.yml.enc
213
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/environment.rb
214
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/puma.rb
215
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/routes.rb
216
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/spring.rb
217
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/db/schema.rb
218
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability.rb
219
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability_mapping.rb
220
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/public/favicon.ico
221
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/code/rubocop_spec.rb
222
+ - sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/spec_helper.rb
189
223
  - sub/avm-eac_rails_base1/Gemfile
190
224
  - sub/avm-eac_rails_base1/avm-eac_rails_base1.gemspec
191
225
  - sub/avm-eac_rails_base1/lib/avm/eac_rails_base1.rb
@@ -455,6 +489,7 @@ files:
455
489
  - sub/avm-tools/lib/avm/tools/runner/self.rb
456
490
  - sub/avm-tools/lib/avm/tools/runner/self/docker.rb
457
491
  - sub/avm-tools/lib/avm/tools/runner/self/registry.rb
492
+ - sub/avm-tools/lib/avm/tools/runner/source_generate.rb
458
493
  - sub/avm-tools/lib/avm/tools/self.rb
459
494
  - sub/avm-tools/lib/avm/tools/version.rb
460
495
  - sub/avm-tools/locale/en.yml
@@ -991,11 +1026,11 @@ files:
991
1026
  - sub/avm/lib/avm/instances.rb
992
1027
  - sub/avm/lib/avm/instances/base.rb
993
1028
  - sub/avm/lib/avm/instances/base/auto_values.rb
994
- - sub/avm/lib/avm/instances/base/auto_values/access.rb
995
1029
  - sub/avm/lib/avm/instances/base/auto_values/admin.rb
996
1030
  - sub/avm/lib/avm/instances/base/auto_values/data.rb
997
1031
  - sub/avm/lib/avm/instances/base/auto_values/database.rb
998
1032
  - sub/avm/lib/avm/instances/base/auto_values/filesystem.rb
1033
+ - sub/avm/lib/avm/instances/base/auto_values/install.rb
999
1034
  - sub/avm/lib/avm/instances/base/auto_values/mailer.rb
1000
1035
  - sub/avm/lib/avm/instances/base/auto_values/ruby.rb
1001
1036
  - sub/avm/lib/avm/instances/base/auto_values/source.rb
@@ -1024,6 +1059,7 @@ files:
1024
1059
  - sub/avm/lib/avm/registry/instances.rb
1025
1060
  - sub/avm/lib/avm/registry/runners.rb
1026
1061
  - sub/avm/lib/avm/registry/scms.rb
1062
+ - sub/avm/lib/avm/registry/source_generators.rb
1027
1063
  - sub/avm/lib/avm/registry/sources.rb
1028
1064
  - sub/avm/lib/avm/registry/with_path.rb
1029
1065
  - sub/avm/lib/avm/registry/with_path/cache.rb
@@ -1040,6 +1076,8 @@ files:
1040
1076
  - sub/avm/lib/avm/self/docker_image.rb
1041
1077
  - sub/avm/lib/avm/self/instance.rb
1042
1078
  - sub/avm/lib/avm/self/instance/entry_keys.rb
1079
+ - sub/avm/lib/avm/source_generators.rb
1080
+ - sub/avm/lib/avm/source_generators/base.rb
1043
1081
  - sub/avm/lib/avm/sources.rb
1044
1082
  - sub/avm/lib/avm/sources/base.rb
1045
1083
  - sub/avm/lib/avm/sources/base/configuration.rb
@@ -1059,8 +1097,8 @@ files:
1059
1097
  - sub/avm/lib/avm/sync.rb
1060
1098
  - sub/avm/lib/avm/version.rb
1061
1099
  - sub/avm/lib/avm/version_number.rb
1062
- - sub/avm/lib/avm/with_application_stereotype.rb
1063
- - sub/avm/lib/avm/with_dynamic_runners.rb
1100
+ - sub/avm/lib/avm/with/application_stereotype.rb
1101
+ - sub/avm/lib/avm/with/extra_subcommands.rb
1064
1102
  - sub/avm/spec/lib/avm/applications/base_spec.rb
1065
1103
  - sub/avm/spec/lib/avm/applications/base_spec_fixture.yml
1066
1104
  - sub/avm/spec/lib/avm/instances/base_spec.rb
@@ -1379,6 +1417,8 @@ files:
1379
1417
  - sub/eac_ruby_utils/lib/eac_ruby_utils/recursive_builder.rb
1380
1418
  - sub/eac_ruby_utils/lib/eac_ruby_utils/regexp_parser.rb
1381
1419
  - sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb
1420
+ - sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/base.rb
1421
+ - sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub/sub_file.rb
1382
1422
  - sub/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb
1383
1423
  - sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/default_setup.rb
1384
1424
  - sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb
@@ -1441,9 +1481,9 @@ files:
1441
1481
  - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/parent_n_spec.rb
1442
1482
  - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/string/delimited_spec.rb
1443
1483
  - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/recursive_builder_spec.rb
1444
- - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec.rb
1445
- - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_module_a.rb
1446
- - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_not_module.rb
1484
+ - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec.rb
1485
+ - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec/stubbed_module_a.rb
1486
+ - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub/base_spec/stubbed_not_module.rb
1447
1487
  - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby_spec.rb
1448
1488
  - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/settings_provider_spec.rb
1449
1489
  - sub/eac_ruby_utils/spec/lib/eac_ruby_utils/simple_cache_spec.rb
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Avm
4
- module Instances
5
- class Base
6
- module AutoValues
7
- module Access
8
- def auto_access
9
- read_entry_optional('ssh.url').present? ? 'ssh' : 'local'
10
- end
11
-
12
- def auto_ssh_hostname
13
- inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.hostname')
14
- end
15
-
16
- def auto_ssh_port
17
- inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.port') || 22
18
- end
19
-
20
- def auto_ssh_username
21
- inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.username')
22
- end
23
-
24
- def auto_ssh_url
25
- inherited_entry_value(::Avm::Instances::EntryKeys::HOST_ID, 'ssh.url') ||
26
- auto_ssh_url_by_parts
27
- end
28
-
29
- def auto_ssh_url_by_parts
30
- read_entry_optional('ssh.hostname').if_present do |a|
31
- a = read_entry_optional('ssh.username').if_present(a) { |v| "#{v}@#{a}" }
32
- a = read_entry_optional('ssh.port').if_present(a) { |v| "#{a}:#{v}" }
33
- "ssh://#{a}"
34
- end
35
- end
36
- end
37
- end
38
- end
39
- end
40
- end
@@ -1,23 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_cli/runner_with/subcommands'
4
- require 'eac_ruby_utils/core_ext'
5
-
6
- module Avm
7
- module WithApplicationStereotype
8
- common_concern do
9
- include ClassMethods
10
- end
11
-
12
- module ClassMethods
13
- # @return [Module]
14
- def stereotype_namespace_module
15
- module_parent.module_parent
16
- end
17
- end
18
-
19
- def stereotype_namespace_module
20
- self.class.stereotype_namespace_module
21
- end
22
- end
23
- end
@@ -1,42 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_cli/runner_with/subcommands'
4
- require 'eac_ruby_utils/core_ext'
5
-
6
- module Avm
7
- module WithDynamicRunners
8
- # @return [Hash<String, EacCli::Runner>]
9
- def extra_available_subcommands
10
- extra_available_subcommands_from_runners_module
11
- end
12
-
13
- # @return [Hash<String, EacCli::Runner>]
14
- def extra_available_subcommands_from_runners_module
15
- self.class.ancestors.reverse.inject({}) do |a, e|
16
- a.merge(RunnersFromModule.new(e).result)
17
- end
18
- end
19
-
20
- class RunnersFromModule
21
- enable_simple_cache
22
- common_constructor :the_module
23
-
24
- # @return [Hash<String, EacCli::Runner>]
25
- def result
26
- return {} if runners_module.blank?
27
-
28
- ::EacCli::RunnerWith::Subcommands.subcommands_from_module(runners_module)
29
- end
30
-
31
- def runners_module_uncached
32
- return nil if the_module.module_parent.blank?
33
-
34
- begin
35
- the_module.module_parent.const_get('Runners')
36
- rescue ::NameError
37
- nil
38
- end
39
- end
40
- end
41
- end
42
- end