eac_tools 0.27.2 → 0.28.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +28 -28
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/avm.gemspec +1 -1
  5. data/sub/avm/lib/avm/instances/base.rb +3 -4
  6. data/sub/avm/lib/avm/instances/runner.rb +15 -19
  7. data/sub/avm/lib/avm/version.rb +1 -1
  8. data/sub/avm-eac_asciidoctor_base0/avm-eac_asciidoctor_base0.gemspec +2 -2
  9. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/apache_host.rb +19 -0
  10. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/{apache_path.rb → instances/apache_path.rb} +3 -1
  11. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/base.rb +3 -0
  12. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/deploy.rb +28 -0
  13. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/version.rb +1 -1
  14. data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +1 -1
  15. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/apache_host.rb +36 -0
  16. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/apache_path.rb +39 -0
  17. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/deploy.rb +43 -0
  18. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
  19. data/sub/avm-tools/avm-tools.gemspec +2 -2
  20. data/sub/avm-tools/lib/avm/tools/runner/instance/info.rb +2 -1
  21. data/sub/avm-tools/lib/avm/tools/runner/instance.rb +2 -18
  22. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  23. data/sub/eac_ruby_utils/lib/eac_ruby_utils/method_class.rb +1 -0
  24. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/module_parent.rb +5 -0
  25. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  26. metadata +23 -34
  27. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/apache_host.rb +0 -17
  28. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/deploy.rb +0 -26
  29. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_host.rb +0 -35
  30. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_path.rb +0 -40
  31. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/deploy.rb +0 -41
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 69feb1fcacbebe2c9a3e55f803f1ab72cf23b9396296ec50d4a5979d2183ce5b
4
- data.tar.gz: 34f748e9a7ccede566b689a338eebe7996d2d66b81b3225f85ef7c43ec5c7c0f
3
+ metadata.gz: 7722b0da596d9938d82c6644ba890cb4a652ac1a59c1e5e076cf777755d62295
4
+ data.tar.gz: 4186335c28edaa415fdede3bc509d5f1f435ef0156e199d2f8c7a4c8518733fb
5
5
  SHA512:
6
- metadata.gz: 984112c656a9b42ce43c18a0d12de2e030ec972da7eefa6ac9ad689c632876ee682d4a174dc96bd26780f6e38163853d27ba06805576af1f02c295308f2b3385
7
- data.tar.gz: 36f2d19db33361e76d7e6412be9652d5be8bcc98607d08e285d3a1f13ca171386cc5ba5f7aa7852a6b05eecab7e011498dcd703829e652b0788ff851653b9c36
6
+ metadata.gz: '0697f2a0047227a89cd7eb78a46a4dc42fda37bb8e73ee8574dd1c02eaa0578dd2e90732dd684ff296512f439184cff8b4e6cb8e5b94932e9fa21cb4c4a0138e'
7
+ data.tar.gz: 2d8baec6a15bf0bccb580f8d60ec1a38213cd63db00366f40c6a827bc162f6e7ce113e8a48312f73428ee68c45e0e4f6759f9858d2045c005ca652b9dac41cae
data/Gemfile.lock CHANGED
@@ -1,9 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.27.2)
5
- avm (~> 0.41, >= 0.41.1)
6
- avm-eac_asciidoctor_base0 (~> 0.6, >= 0.6.1)
4
+ eac_tools (0.28.0)
5
+ avm (~> 0.42)
6
+ avm-eac_asciidoctor_base0 (~> 0.7)
7
7
  avm-eac_generic_base0 (~> 0.5)
8
8
  avm-eac_latex_base0 (~> 0.2)
9
9
  avm-eac_rails_base0 (~> 0.8)
@@ -11,18 +11,18 @@ PATH
11
11
  avm-eac_redmine_base0 (~> 0.14)
12
12
  avm-eac_redmine_plugin_base0 (~> 0.3)
13
13
  avm-eac_ruby_base1 (~> 0.20, >= 0.20.1)
14
- avm-eac_webapp_base0 (~> 0.6, >= 0.6.1)
14
+ avm-eac_webapp_base0 (~> 0.7)
15
15
  avm-eac_wordpress_base0 (~> 0.2)
16
- avm-tools (~> 0.135)
17
- eac_ruby_utils (~> 0.102)
16
+ avm-tools (~> 0.136)
17
+ eac_ruby_utils (~> 0.102, >= 0.102.1)
18
18
 
19
19
  PATH
20
20
  remote: sub/avm-eac_asciidoctor_base0
21
21
  specs:
22
- avm-eac_asciidoctor_base0 (0.6.1)
22
+ avm-eac_asciidoctor_base0 (0.7.0)
23
23
  asciidoctor (~> 2.0, >= 2.0.17)
24
- avm-eac_webapp_base0 (~> 0.6, >= 0.6.1)
25
- eac_ruby_utils (~> 0.102)
24
+ avm-eac_webapp_base0 (~> 0.7)
25
+ eac_ruby_utils (~> 0.102, >= 0.102.1)
26
26
  os (~> 1.1, >= 1.1.4)
27
27
  rouge (~> 3.30)
28
28
 
@@ -88,12 +88,12 @@ PATH
88
88
  PATH
89
89
  remote: sub/avm-eac_webapp_base0
90
90
  specs:
91
- avm-eac_webapp_base0 (0.6.1)
91
+ avm-eac_webapp_base0 (0.7.0)
92
92
  avm (~> 0.41, >= 0.41.1)
93
93
  avm-eac_generic_base0 (~> 0.5)
94
94
  avm-eac_postgresql_base0 (~> 0.2)
95
95
  avm-eac_ubuntu_base0 (~> 0.3)
96
- eac_ruby_utils (~> 0.102)
96
+ eac_ruby_utils (~> 0.102, >= 0.102.1)
97
97
 
98
98
  PATH
99
99
  remote: sub/avm-eac_wordpress_base0
@@ -106,10 +106,10 @@ PATH
106
106
  PATH
107
107
  remote: sub/avm-tools
108
108
  specs:
109
- avm-tools (0.135.0)
109
+ avm-tools (0.136.0)
110
110
  aranha-parsers (~> 0.14, >= 0.14.1)
111
- avm (~> 0.41)
112
- avm-eac_ruby_base1 (~> 0.20)
111
+ avm (~> 0.42)
112
+ avm-eac_ruby_base1 (~> 0.20, >= 0.20.1)
113
113
  avm-eac_ubuntu_base0 (~> 0.3)
114
114
  avm-files (~> 0.3, >= 0.3.2)
115
115
  avm-git (~> 0.4)
@@ -124,12 +124,12 @@ PATH
124
124
  PATH
125
125
  remote: sub/avm
126
126
  specs:
127
- avm (0.41.1)
127
+ avm (0.42.0)
128
128
  eac_cli (~> 0.27, >= 0.27.8)
129
129
  eac_config (~> 0.11, >= 0.11.1)
130
130
  eac_docker (~> 0.4, >= 0.4.2)
131
131
  eac_git (~> 0.12, >= 0.12.2)
132
- eac_ruby_utils (~> 0.102)
132
+ eac_ruby_utils (~> 0.102, >= 0.102.1)
133
133
  eac_templates (~> 0.3, >= 0.3.1)
134
134
  filesize (~> 0.2)
135
135
  htmlbeautifier (~> 1.4, >= 1.4.2)
@@ -177,7 +177,7 @@ PATH
177
177
  PATH
178
178
  remote: sub/eac_ruby_utils
179
179
  specs:
180
- eac_ruby_utils (0.102.0)
180
+ eac_ruby_utils (0.102.1)
181
181
  activesupport (>= 4, < 7)
182
182
  addressable (~> 2.8)
183
183
  bundler
@@ -195,15 +195,15 @@ GEM
195
195
  zeitwerk (~> 2.3)
196
196
  addressable (2.8.1)
197
197
  public_suffix (>= 2.0.2, < 6.0)
198
- aranha-parsers (0.14.1)
199
- activesupport (>= 4.0.0)
200
- addressable (~> 2.7)
201
- curb (~> 0.9.10)
202
- eac_ruby_utils (~> 0.92, >= 0.92.1)
198
+ aranha-parsers (0.14.2)
199
+ activesupport (~> 6.1.6, >= 6.1.6.1)
200
+ addressable (~> 2.8, >= 2.8.1)
201
+ curb (~> 0.9, >= 0.9.11)
202
+ eac_ruby_utils (~> 0.102, >= 0.102.1)
203
203
  faraday-gzip (~> 0.1)
204
- faraday_middleware
205
- nokogiri (~> 1.12, >= 1.12.4)
206
- ofx-parser (~> 1.1.0)
204
+ faraday_middleware (~> 1.2)
205
+ nokogiri (~> 1.13, >= 1.13.8)
206
+ ofx-parser (~> 1.1)
207
207
  asciidoctor (2.0.17)
208
208
  ast (2.4.2)
209
209
  avm-eac_postgresql_base0 (0.2.0)
@@ -240,9 +240,9 @@ GEM
240
240
  rubocop (~> 0.80.1)
241
241
  rubocop-rails (~> 2.4.2)
242
242
  rubocop-rspec (~> 1.38.1)
243
- eac_templates (0.3.1)
244
- eac_config (~> 0.5)
245
- eac_ruby_utils (~> 0.64)
243
+ eac_templates (0.3.2)
244
+ eac_config (~> 0.11, >= 0.11.1)
245
+ eac_ruby_utils (~> 0.102, >= 0.102.1)
246
246
  faraday (1.10.2)
247
247
  faraday-em_http (~> 1.0)
248
248
  faraday-em_synchrony (~> 1.0)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.27.2'
4
+ VERSION = '0.28.0'
5
5
  end
data/sub/avm/avm.gemspec CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
  s.add_dependency 'eac_config', '~> 0.11', '>= 0.11.1'
17
17
  s.add_dependency 'eac_docker', '~> 0.4', '>= 0.4.2'
18
18
  s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.2'
19
- s.add_dependency 'eac_ruby_utils', '~> 0.102'
19
+ s.add_dependency 'eac_ruby_utils', '~> 0.102', '>= 0.102.1'
20
20
  s.add_dependency 'eac_templates', '~> 0.3', '>= 0.3.1'
21
21
  s.add_dependency 'filesize', '~> 0.2'
22
22
  s.add_dependency 'htmlbeautifier', '~> 1.4', '>= 1.4.2'
@@ -51,11 +51,10 @@ module Avm
51
51
  end
52
52
 
53
53
  def host_env_uncached
54
- install_uri = entry(::Avm::Instances::EntryKeys::INSTALL_URL).value.to_uri
55
- case install_uri.scheme
54
+ case install_scheme
56
55
  when 'file' then ::EacRubyUtils::Envs.local
57
- when 'ssh' then ::EacRubyUtils::Envs.ssh(install_uri)
58
- else raise("Unmapped access value: \"#{install_uri}\"")
56
+ when 'ssh' then ::EacRubyUtils::Envs.ssh(install_url)
57
+ else raise("Unmapped access value: \"#{install_scheme}\"")
59
58
  end
60
59
  end
61
60
 
@@ -6,35 +6,31 @@ require 'eac_cli/core_ext'
6
6
  module Avm
7
7
  module Instances
8
8
  class Runner < ::Avm::Runners::Base
9
- class << self
10
- def application_stereotype
11
- ::Avm::Registry.application_stereotypes.detect(stereotype_name)
12
- end
13
-
14
- delegate :instance_class, to: :application_stereotype
9
+ runner_with :help, :subcommands do
10
+ desc 'Utilities for a instance.'
11
+ pos_arg 'instance-id'
12
+ subcommands
13
+ end
15
14
 
16
- def stereotype_module
17
- ::Avm.const_get(stereotype_name)
18
- end
15
+ delegate :class, to: :instance, prefix: true
16
+ delegate :stereotype_module, :stereotype_name, to: :class
19
17
 
20
- def stereotype_name
21
- name.demodulize
22
- end
18
+ def extra_available_subcommands
19
+ instance.if_present({}, &:extra_available_subcommands)
23
20
  end
24
21
 
25
- description = "Utilities for #{stereotype_name} instances."
26
- runner_with :help, :subcommands do
27
- desc description
28
- pos_arg 'instance-id'
29
- subcommands
22
+ def stereotype_module
23
+ instance.application.stereotype.namespace_module
30
24
  end
31
25
 
32
- delegate :instance_class, :stereotype_module, :stereotype_name, to: :class
26
+ def stereotype_name
27
+ stereotype_module.name
28
+ end
33
29
 
34
30
  private
35
31
 
36
32
  def instance_uncached
37
- self.class.instance_class.by_id(parsed.instance_id)
33
+ parsed.instance_id.if_present { |v| ::Avm::Registry.instances.detect(v) }
38
34
  end
39
35
  end
40
36
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.41.1'
4
+ VERSION = '0.42.0'
5
5
  end
@@ -13,8 +13,8 @@ Gem::Specification.new do |s|
13
13
  s.files = Dir['{lib,template}/**/*']
14
14
 
15
15
  s.add_dependency 'asciidoctor', '~> 2.0', '>= 2.0.17'
16
- s.add_dependency 'avm-eac_webapp_base0', '~> 0.6', '>= 0.6.1'
17
- s.add_dependency 'eac_ruby_utils', '~> 0.102'
16
+ s.add_dependency 'avm-eac_webapp_base0', '~> 0.7'
17
+ s.add_dependency 'eac_ruby_utils', '~> 0.102', '>= 0.102.1'
18
18
  s.add_dependency 'os', '~> 1.1', '>= 1.1.4'
19
19
  s.add_dependency 'rouge', '~> 3.30'
20
20
 
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_webapp_base0/apache_host'
4
+
5
+ module Avm
6
+ module EacAsciidoctorBase0
7
+ module Instances
8
+ class ApacheHost < ::Avm::EacWebappBase0::ApacheHost
9
+ def document_root
10
+ instance.read_entry(::Avm::Instances::EntryKeys::INSTALL_PATH)
11
+ end
12
+
13
+ def extra_content
14
+ ''
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -4,7 +4,9 @@ require 'avm/eac_webapp_base0/apache_path'
4
4
 
5
5
  module Avm
6
6
  module EacAsciidoctorBase0
7
- class ApachePath < ::Avm::EacWebappBase0::ApachePath
7
+ module Instances
8
+ class ApachePath < ::Avm::EacWebappBase0::ApachePath
9
+ end
8
10
  end
9
11
  end
10
12
  end
@@ -1,5 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'avm/eac_asciidoctor_base0/instances/apache_host'
4
+ require 'avm/eac_asciidoctor_base0/instances/apache_path'
5
+ require 'avm/eac_asciidoctor_base0/instances/deploy'
3
6
  require 'avm/eac_webapp_base0/instances/base'
4
7
 
5
8
  module Avm
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_webapp_base0/deploy'
4
+ require 'avm/eac_asciidoctor_base0/sources/base'
5
+ require 'avm/eac_asciidoctor_base0/sources/build'
6
+
7
+ module Avm
8
+ module EacAsciidoctorBase0
9
+ module Instances
10
+ class Deploy < ::Avm::EacWebappBase0::Deploy
11
+ def build_content
12
+ ::Avm::EacAsciidoctorBase0::Sources::Build.new(
13
+ project,
14
+ ::Avm::EacAsciidoctorBase0::Sources::Build::OPTION_TARGET_DIRECTORY => build_dir
15
+ ).run
16
+ end
17
+
18
+ private
19
+
20
+ def project_uncached
21
+ ::Avm::EacAsciidoctorBase0::Sources::Base.new(
22
+ instance.source_instance.read_entry(::Avm::Instances::EntryKeys::INSTALL_PATH)
23
+ )
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacAsciidoctorBase0
5
- VERSION = '0.6.1'
5
+ VERSION = '0.7.0'
6
6
  end
7
7
  end
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
  s.add_dependency 'avm-eac_generic_base0', '~> 0.5'
17
17
  s.add_dependency 'avm-eac_postgresql_base0', '~> 0.2'
18
18
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.3'
19
- s.add_dependency 'eac_ruby_utils', '~> 0.102'
19
+ s.add_dependency 'eac_ruby_utils', '~> 0.102', '>= 0.102.1'
20
20
 
21
21
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.2'
22
22
  end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_cli/core_ext'
4
+
5
+ module Avm
6
+ module EacWebappBase0
7
+ module Instances
8
+ module Runners
9
+ class ApacheHost
10
+ runner_with :help do
11
+ desc 'Configure Apache virtual host for instance.'
12
+ bool_opt '-c', '--certbot', 'Install certbot.'
13
+ end
14
+
15
+ def run
16
+ result = stereotype_apache_host_class.new(runner_context.call(:instance),
17
+ stereotype_apache_host_options).run
18
+ if result.error?
19
+ fatal_error result.to_s
20
+ else
21
+ infov 'Result', result.label
22
+ end
23
+ end
24
+
25
+ def stereotype_apache_host_class
26
+ "#{runner_context.call(:instance).class.name.deconstantize}::ApacheHost".constantize
27
+ end
28
+
29
+ def stereotype_apache_host_options
30
+ { certbot: parsed.certbot? }
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_cli/core_ext'
4
+
5
+ module Avm
6
+ module EacWebappBase0
7
+ module Instances
8
+ module Runners
9
+ class ApachePath
10
+ runner_with :help do
11
+ desc 'Configure Apache path configuration for instance.'
12
+ end
13
+
14
+ def run
15
+ if result.error?
16
+ fatal_error result.to_s
17
+ else
18
+ infov 'Result', result.label
19
+ end
20
+ end
21
+
22
+ private
23
+
24
+ def apache_path_uncached
25
+ stereotype_apache_path_class.new(runner_context.call(:instance))
26
+ end
27
+
28
+ def result_uncached
29
+ apache_path.run
30
+ end
31
+
32
+ def stereotype_apache_path_class
33
+ "#{runner_context.call(:instance).class.name.deconstantize}::ApachePath".constantize
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/instances/runner'
4
+ require 'avm/path_string'
5
+ require 'eac_cli/core_ext'
6
+
7
+ module Avm
8
+ module EacWebappBase0
9
+ module Instances
10
+ module Runners
11
+ class Deploy
12
+ runner_with :help do
13
+ desc 'Deploy for instance.'
14
+ arg_opt '-r', '--reference', 'Git reference to deploy.'
15
+ arg_opt '-a', '--append-dirs', 'Append directories to deploy (List separated by ":").'
16
+ bool_opt '-T', '--no-request-test', 'Do not test web interface after deploy.'
17
+ end
18
+
19
+ def deploy_class
20
+ runner_context.call(:stereotype_module).const_get('Instances').const_get('Deploy')
21
+ rescue ::NameError
22
+ runner_context.call(:stereotype_module).const_get('Deploy')
23
+ end
24
+
25
+ def run
26
+ result = deploy_class.new(runner_context.call(:instance), deploy_options).run
27
+ if result.error?
28
+ fatal_error result.to_s
29
+ else
30
+ infov 'Result', result.label
31
+ end
32
+ end
33
+
34
+ def deploy_options
35
+ { reference: parsed.reference,
36
+ appended_directories: ::Avm::PathString.paths(parsed.append_dirs),
37
+ no_request_test: parsed.no_request_test? }
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacWebappBase0
5
- VERSION = '0.6.1'
5
+ VERSION = '0.7.0'
6
6
  end
7
7
  end
@@ -15,8 +15,8 @@ Gem::Specification.new do |s|
15
15
  s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
16
16
 
17
17
  s.add_dependency 'aranha-parsers', '~> 0.14', '>= 0.14.1'
18
- s.add_dependency 'avm', '~> 0.41'
19
- s.add_dependency 'avm-eac_ruby_base1', '~> 0.20'
18
+ s.add_dependency 'avm', '~> 0.42'
19
+ s.add_dependency 'avm-eac_ruby_base1', '~> 0.20', '>= 0.20.1'
20
20
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.3'
21
21
  s.add_dependency 'avm-files', '~> 0.3', '>= 0.3.2'
22
22
  s.add_dependency 'avm-git', '~> 0.4'
@@ -1,12 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'avm/instances/entry_keys'
4
+ require 'avm/instances/runner'
4
5
  require 'eac_cli/core_ext'
5
6
 
6
7
  module Avm
7
8
  module Tools
8
9
  class Runner
9
- class Instance
10
+ class Instance < ::Avm::Instances::Runner
10
11
  class Info
11
12
  runner_with :help do
12
13
  desc 'Show info about a instance.'
@@ -1,31 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'avm/instances/base'
4
+ require 'avm/instances/runner'
4
5
  require 'avm/registry'
5
6
  require 'eac_cli/core_ext'
6
7
 
7
8
  module Avm
8
9
  module Tools
9
10
  class Runner
10
- class Instance
11
+ class Instance < ::Avm::Instances::Runner
11
12
  require_sub __FILE__
12
- runner_with :help, :subcommands do
13
- desc 'Utilities for generic instances.'
14
- pos_arg :instance_id
15
- subcommands
16
- end
17
-
18
- def extra_available_subcommands
19
- instance.if_present({}, &:extra_available_subcommands)
20
- end
21
-
22
- private
23
-
24
- def instance_uncached
25
- parsed.instance_id.if_present do |v|
26
- ::Avm::Registry.instances.detect(v)
27
- end
28
- end
29
13
  end
30
14
  end
31
15
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.135.0'
5
+ VERSION = '0.136.0'
6
6
  end
7
7
  end
@@ -3,6 +3,7 @@
3
3
  require 'active_support/core_ext/module/introspection'
4
4
  require 'eac_ruby_utils/patches/class/common_constructor'
5
5
  require 'eac_ruby_utils/patches/module/common_concern'
6
+ require 'eac_ruby_utils/patches/module/module_parent'
6
7
  require 'eac_ruby_utils/patches/string/inflector'
7
8
 
8
9
  module EacRubyUtils
@@ -0,0 +1,5 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'active_support/core_ext/module/introspection'
4
+
5
+ ::Module.alias_method :module_parent, :parent unless ::Module.method_defined?(:module_parent)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRubyUtils
4
- VERSION = '0.102.0'
4
+ VERSION = '0.102.1'
5
5
  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.27.2
4
+ version: 0.28.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-09-06 00:00:00.000000000 Z
11
+ date: 2022-09-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm
@@ -16,40 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.41'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 0.41.1
19
+ version: '0.42'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0.41'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 0.41.1
26
+ version: '0.42'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: avm-eac_asciidoctor_base0
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - "~>"
38
32
  - !ruby/object:Gem::Version
39
- version: '0.6'
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- version: 0.6.1
33
+ version: '0.7'
43
34
  type: :runtime
44
35
  prerelease: false
45
36
  version_requirements: !ruby/object:Gem::Requirement
46
37
  requirements:
47
38
  - - "~>"
48
39
  - !ruby/object:Gem::Version
49
- version: '0.6'
50
- - - ">="
51
- - !ruby/object:Gem::Version
52
- version: 0.6.1
40
+ version: '0.7'
53
41
  - !ruby/object:Gem::Dependency
54
42
  name: avm-eac_generic_base0
55
43
  requirement: !ruby/object:Gem::Requirement
@@ -160,20 +148,14 @@ dependencies:
160
148
  requirements:
161
149
  - - "~>"
162
150
  - !ruby/object:Gem::Version
163
- version: '0.6'
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- version: 0.6.1
151
+ version: '0.7'
167
152
  type: :runtime
168
153
  prerelease: false
169
154
  version_requirements: !ruby/object:Gem::Requirement
170
155
  requirements:
171
156
  - - "~>"
172
157
  - !ruby/object:Gem::Version
173
- version: '0.6'
174
- - - ">="
175
- - !ruby/object:Gem::Version
176
- version: 0.6.1
158
+ version: '0.7'
177
159
  - !ruby/object:Gem::Dependency
178
160
  name: avm-eac_wordpress_base0
179
161
  requirement: !ruby/object:Gem::Requirement
@@ -194,14 +176,14 @@ dependencies:
194
176
  requirements:
195
177
  - - "~>"
196
178
  - !ruby/object:Gem::Version
197
- version: '0.135'
179
+ version: '0.136'
198
180
  type: :runtime
199
181
  prerelease: false
200
182
  version_requirements: !ruby/object:Gem::Requirement
201
183
  requirements:
202
184
  - - "~>"
203
185
  - !ruby/object:Gem::Version
204
- version: '0.135'
186
+ version: '0.136'
205
187
  - !ruby/object:Gem::Dependency
206
188
  name: eac_ruby_utils
207
189
  requirement: !ruby/object:Gem::Requirement
@@ -209,6 +191,9 @@ dependencies:
209
191
  - - "~>"
210
192
  - !ruby/object:Gem::Version
211
193
  version: '0.102'
194
+ - - ">="
195
+ - !ruby/object:Gem::Version
196
+ version: 0.102.1
212
197
  type: :runtime
213
198
  prerelease: false
214
199
  version_requirements: !ruby/object:Gem::Requirement
@@ -216,6 +201,9 @@ dependencies:
216
201
  - - "~>"
217
202
  - !ruby/object:Gem::Version
218
203
  version: '0.102'
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ version: 0.102.1
219
207
  - !ruby/object:Gem::Dependency
220
208
  name: eac_ruby_gem_support
221
209
  requirement: !ruby/object:Gem::Requirement
@@ -243,11 +231,11 @@ files:
243
231
  - sub/avm-eac_asciidoctor_base0/Gemfile
244
232
  - sub/avm-eac_asciidoctor_base0/avm-eac_asciidoctor_base0.gemspec
245
233
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0.rb
246
- - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/apache_host.rb
247
- - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/apache_path.rb
248
- - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/deploy.rb
249
234
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances.rb
235
+ - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/apache_host.rb
236
+ - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/apache_path.rb
250
237
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/base.rb
238
+ - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/deploy.rb
251
239
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/runners.rb
252
240
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/runners/base.rb
253
241
  - sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources.rb
@@ -541,13 +529,13 @@ files:
541
529
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base.rb
542
530
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/subcommand_parent.rb
543
531
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners.rb
532
+ - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/apache_host.rb
533
+ - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/apache_path.rb
544
534
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data.rb
545
535
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/dump.rb
546
536
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb
537
+ - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/deploy.rb
547
538
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner.rb
548
- - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_host.rb
549
- - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_path.rb
550
- - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/deploy.rb
551
539
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources.rb
552
540
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources/base.rb
553
541
  - sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb
@@ -1150,6 +1138,7 @@ files:
1150
1138
  - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/immutable.rb
1151
1139
  - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/listable.rb
1152
1140
  - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/method_class.rb
1141
+ - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/module_parent.rb
1153
1142
  - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/patch.rb
1154
1143
  - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/require_sub.rb
1155
1144
  - sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_webapp_base0/apache_host'
4
-
5
- module Avm
6
- module EacAsciidoctorBase0
7
- class ApacheHost < ::Avm::EacWebappBase0::ApacheHost
8
- def document_root
9
- instance.read_entry(::Avm::Instances::EntryKeys::INSTALL_PATH)
10
- end
11
-
12
- def extra_content
13
- ''
14
- end
15
- end
16
- end
17
- end
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/eac_webapp_base0/deploy'
4
- require 'avm/eac_asciidoctor_base0/sources/base'
5
- require 'avm/eac_asciidoctor_base0/sources/build'
6
-
7
- module Avm
8
- module EacAsciidoctorBase0
9
- class Deploy < ::Avm::EacWebappBase0::Deploy
10
- def build_content
11
- ::Avm::EacAsciidoctorBase0::Sources::Build.new(
12
- project,
13
- ::Avm::EacAsciidoctorBase0::Sources::Build::OPTION_TARGET_DIRECTORY => build_dir
14
- ).run
15
- end
16
-
17
- private
18
-
19
- def project_uncached
20
- ::Avm::EacAsciidoctorBase0::Sources::Base.new(
21
- instance.source_instance.read_entry(::Avm::Instances::EntryKeys::INSTALL_PATH)
22
- )
23
- end
24
- end
25
- end
26
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/instances/runner'
4
- require 'eac_cli/core_ext'
5
-
6
- module Avm
7
- module EacWebappBase0
8
- class Runner < ::Avm::Instances::Runner
9
- class ApacheHost
10
- runner_with :help do
11
- desc 'Configure Apache virtual host for instance.'
12
- bool_opt '-c', '--certbot', 'Install certbot.'
13
- end
14
-
15
- def run
16
- result = stereotype_apache_host_class.new(runner_context.call(:instance),
17
- stereotype_apache_host_options).run
18
- if result.error?
19
- fatal_error result.to_s
20
- else
21
- infov 'Result', result.label
22
- end
23
- end
24
-
25
- def stereotype_apache_host_class
26
- "#{runner_context.call(:instance).class.name.deconstantize}::ApacheHost".constantize
27
- end
28
-
29
- def stereotype_apache_host_options
30
- { certbot: parsed.certbot? }
31
- end
32
- end
33
- end
34
- end
35
- end
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_cli/core_ext'
4
- require 'avm/instances/runner'
5
- require 'avm/eac_webapp_base0/runner/apache_host'
6
- require 'avm/eac_rails_base0/apache_path'
7
-
8
- module Avm
9
- module EacWebappBase0
10
- class Runner < ::Avm::Instances::Runner
11
- class ApachePath
12
- runner_with :help do
13
- desc 'Configure Apache path configuration for instance.'
14
- end
15
-
16
- def run
17
- if result.error?
18
- fatal_error result.to_s
19
- else
20
- infov 'Result', result.label
21
- end
22
- end
23
-
24
- private
25
-
26
- def apache_path_uncached
27
- stereotype_apache_path_class.new(runner_context.call(:instance))
28
- end
29
-
30
- def result_uncached
31
- apache_path.run
32
- end
33
-
34
- def stereotype_apache_path_class
35
- "#{runner_context.call(:instance).class.name.deconstantize}::ApachePath".constantize
36
- end
37
- end
38
- end
39
- end
40
- end
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/instances/runner'
4
- require 'avm/path_string'
5
- require 'eac_cli/core_ext'
6
-
7
- module Avm
8
- module EacWebappBase0
9
- class Runner < ::Avm::Instances::Runner
10
- class Deploy
11
- runner_with :help do
12
- desc 'Deploy for instance.'
13
- arg_opt '-r', '--reference', 'Git reference to deploy.'
14
- arg_opt '-a', '--append-dirs', 'Append directories to deploy (List separated by ":").'
15
- bool_opt '-T', '--no-request-test', 'Do not test web interface after deploy.'
16
- end
17
-
18
- def deploy_class
19
- runner_context.call(:stereotype_module).const_get('Instances').const_get('Deploy')
20
- rescue ::NameError
21
- runner_context.call(:stereotype_module).const_get('Deploy')
22
- end
23
-
24
- def run
25
- result = deploy_class.new(runner_context.call(:instance), deploy_options).run
26
- if result.error?
27
- fatal_error result.to_s
28
- else
29
- infov 'Result', result.label
30
- end
31
- end
32
-
33
- def deploy_options
34
- { reference: parsed.reference,
35
- appended_directories: ::Avm::PathString.paths(parsed.append_dirs),
36
- no_request_test: parsed.no_request_test? }
37
- end
38
- end
39
- end
40
- end
41
- end