avm-eac_webapp_base0 0.17.2 → 0.18.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a64a6e37d58ff5b888a189ecb50ddf709475c191cbde98694f48165f888d069
4
- data.tar.gz: a49280d8a0ecb8122dfe7a652fc73dc5cde672e8893995e1640699d655f3e341
3
+ metadata.gz: 7c0a15a70bbdad0af58dbf8089f269fbb79449a84453858c67699f9faadbd453
4
+ data.tar.gz: 2622379fd353257a700fb08868a8eaaf2a2a8a29e85a2f3a667b1eef09fd3e60
5
5
  SHA512:
6
- metadata.gz: ef3f787cc889ba004420bbb1e41b54be3b4140181caca3c947c065d9cec1142f75e4ec27453779262fa98b9520f96ed044dd0f21b9a6ad3ab0054901622dfc83
7
- data.tar.gz: bd89154642a043de6f8136d65b75150d6123cb74e3c2285f2c999eab035905550ccec8245d2896dd81cfc97795a42731e4d1ca8f3bed40bd0263c2c677ebc97d
6
+ metadata.gz: 1ff7444c0edc597f52df4d7fcf4540e1ca7c7fe9a6b29fa8b96e8bfd1f62a08efbd26f4c17f1fbd72ebc8b4e5d05b7f1df06ec95e256ccef08f9c0b4131bbc08
7
+ data.tar.gz: 04aaa4f56adf1d09bdc091b6ac3f97a33e92f7801e5251f083e66893422f63ba9440e60ccd6da120ea224061aaa43054c433f1ca61670962146f3a49d1904043
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'avm/entries/jobs/base'
5
+ require 'avm/eac_ubuntu_base0/apache'
6
+ require 'eac_templates/core_ext'
7
+
8
+ module Avm
9
+ module EacWebappBase0
10
+ module Instances
11
+ class ApacheBase
12
+ protected
13
+
14
+ def reload_apache
15
+ infom 'Reloading Apache...'
16
+ apache.service('reload')
17
+ end
18
+
19
+ private
20
+
21
+ # @return [Avm::EacUbuntuBase0::Apache]
22
+ def apache_uncached
23
+ instance.platform_instance.apache
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -3,12 +3,13 @@
3
3
  require 'eac_ruby_utils/core_ext'
4
4
  require 'avm/entries/jobs/base'
5
5
  require 'avm/eac_ubuntu_base0/apache'
6
+ require 'avm/eac_webapp_base0/instances/apache_base'
6
7
  require 'eac_templates/core_ext'
7
8
 
8
9
  module Avm
9
10
  module EacWebappBase0
10
11
  module Instances
11
- class ApacheHost
12
+ class ApacheHost < ::Avm::EacWebappBase0::Instances::ApacheBase
12
13
  APACHE_DIRECTORY_EXTRA_CONFIG_KEY = 'install.apache_directory_extra_config'
13
14
  JOBS = %w[write_available_no_ssl_site enable_no_ssl_site remove_ssl_site reload_apache
14
15
  run_certbot enable_ssl_site reload_apache].freeze
@@ -31,10 +32,6 @@ module Avm
31
32
 
32
33
  private
33
34
 
34
- def apache_uncached
35
- ::Avm::EacUbuntuBase0::Apache.new(instance.host_env)
36
- end
37
-
38
35
  def enable_no_ssl_site
39
36
  infom 'Enabling no SSL site...'
40
37
  no_ssl_site.enable
@@ -51,11 +48,6 @@ module Avm
51
48
  apache.site(instance.id)
52
49
  end
53
50
 
54
- def reload_apache
55
- infom 'Reloading Apache...'
56
- apache.service('reload')
57
- end
58
-
59
51
  def remove_ssl_site
60
52
  infom 'Removing SSL site...'
61
53
  ssl_site.remove
@@ -2,12 +2,13 @@
2
2
 
3
3
  require 'avm/entries/jobs/base'
4
4
  require 'avm/eac_ubuntu_base0/apache'
5
+ require 'avm/eac_webapp_base0/instances/apache_base'
5
6
  require 'eac_ruby_utils/core_ext'
6
7
 
7
8
  module Avm
8
9
  module EacWebappBase0
9
10
  module Instances
10
- class ApachePath
11
+ class ApachePath < ::Avm::EacWebappBase0::Instances::ApacheBase
11
12
  JOBS = %w[write_available_conf enable_conf reload_apache].freeze
12
13
  include ::Avm::Entries::Jobs::Base
13
14
 
@@ -26,20 +27,11 @@ module Avm
26
27
 
27
28
  private
28
29
 
29
- def apache_uncached
30
- ::Avm::EacUbuntuBase0::Apache.new(instance.host_env)
31
- end
32
-
33
30
  def enable_conf
34
31
  infom 'Enabling configuration...'
35
32
  conf.enable
36
33
  end
37
34
 
38
- def reload_apache
39
- infom 'Reloading Apache...'
40
- apache.service('reload')
41
- end
42
-
43
35
  def conf_uncached
44
36
  apache.conf(instance.id)
45
37
  end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/entries/uri_builder'
4
+ require 'avm/instances/entry_keys'
5
+
6
+ module Avm
7
+ module EacWebappBase0
8
+ module Instances
9
+ class Base < ::Avm::Instances::Base
10
+ module Install
11
+ common_concern do
12
+ uri_components_entries_values 'install', %w[apache_resource_name]
13
+ end
14
+
15
+ def install_apache_resource_name_default_value
16
+ id
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -4,6 +4,7 @@ require 'avm/instances/base'
4
4
  require 'avm/eac_postgresql_base0/instance_with'
5
5
  require 'avm/instances/data/files_unit'
6
6
  require 'avm/instances/data/package'
7
+ require 'avm/eac_webapp_base0/instances/processes/web_server'
7
8
  require 'avm/eac_webapp_base0/instances/runners'
8
9
  require 'avm/eac_ubuntu_base0/instances/base'
9
10
 
@@ -11,10 +12,18 @@ module Avm
11
12
  module EacWebappBase0
12
13
  module Instances
13
14
  class Base < ::Avm::Instances::Base
14
- require_sub __FILE__
15
+ require_sub __FILE__, include_modules: true
15
16
  include ::Avm::EacPostgresqlBase0::InstanceWith
16
17
  enable_simple_cache
17
18
 
19
+ # @return [Avm::EacUbuntuBase0::Apache::Resource, nil]
20
+ def apache_resource
21
+ %i[conf site]
22
+ .lazy
23
+ .map { |type| platform_instance.apache.send(type, install_apache_resource_name) }
24
+ .find(&:available?)
25
+ end
26
+
18
27
  def run_subcommand(subcommand_class, argv)
19
28
  subcommand_class.create(
20
29
  argv: argv,
@@ -26,6 +35,11 @@ module Avm
26
35
  pg_data_unit
27
36
  end
28
37
 
38
+ # @return [Array<Avm::Instances::Process>]
39
+ def processes
40
+ super + [::Avm::EacWebappBase0::Instances::Processes::WebServer.new(self)]
41
+ end
42
+
29
43
  private
30
44
 
31
45
  # @return [Avm::EacUbuntuBase0::Instances::Base]
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/instances/process'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacWebappBase0
8
+ module Instances
9
+ module Processes
10
+ class WebServer < ::Avm::Instances::Process
11
+ def available?
12
+ instance.apache_resource.present?
13
+ end
14
+
15
+ def enable
16
+ apache_resource_change(__method__)
17
+ end
18
+
19
+ def disable
20
+ apache_resource_change(__method__)
21
+ end
22
+
23
+ private
24
+
25
+ def apache_resource_change(action)
26
+ instance.apache_resource.send(action)
27
+ instance.platform_instance.apache.service(:reload)
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avm
6
+ module EacWebappBase0
7
+ module Instances
8
+ module Processes
9
+ require_sub __FILE__
10
+ end
11
+ end
12
+ end
13
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacWebappBase0
5
- VERSION = '0.17.2'
5
+ VERSION = '0.18.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avm-eac_webapp_base0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.2
4
+ version: 0.18.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-05-20 00:00:00.000000000 Z
11
+ date: 2023-06-04 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.73'
19
+ version: '0.77'
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.73'
26
+ version: '0.77'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: avm-eac_generic_base0
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -64,20 +64,14 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '0.4'
68
- - - ">="
69
- - !ruby/object:Gem::Version
70
- version: 0.4.3
67
+ version: '0.5'
71
68
  type: :runtime
72
69
  prerelease: false
73
70
  version_requirements: !ruby/object:Gem::Requirement
74
71
  requirements:
75
72
  - - "~>"
76
73
  - !ruby/object:Gem::Version
77
- version: '0.4'
78
- - - ">="
79
- - !ruby/object:Gem::Version
80
- version: 0.4.3
74
+ version: '0.5'
81
75
  - !ruby/object:Gem::Dependency
82
76
  name: avm-files
83
77
  requirement: !ruby/object:Gem::Requirement
@@ -105,6 +99,9 @@ dependencies:
105
99
  - - "~>"
106
100
  - !ruby/object:Gem::Version
107
101
  version: '0.117'
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: 0.117.1
108
105
  type: :runtime
109
106
  prerelease: false
110
107
  version_requirements: !ruby/object:Gem::Requirement
@@ -112,6 +109,9 @@ dependencies:
112
109
  - - "~>"
113
110
  - !ruby/object:Gem::Version
114
111
  version: '0.117'
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: 0.117.1
115
115
  - !ruby/object:Gem::Dependency
116
116
  name: eac_ruby_gem_support
117
117
  requirement: !ruby/object:Gem::Requirement
@@ -142,9 +142,11 @@ files:
142
142
  - lib/avm/eac_webapp_base0/file_formats/json.rb
143
143
  - lib/avm/eac_webapp_base0/file_formats/provider.rb
144
144
  - lib/avm/eac_webapp_base0/file_formats/xml.rb
145
+ - lib/avm/eac_webapp_base0/instances/apache_base.rb
145
146
  - lib/avm/eac_webapp_base0/instances/apache_host.rb
146
147
  - lib/avm/eac_webapp_base0/instances/apache_path.rb
147
148
  - lib/avm/eac_webapp_base0/instances/base.rb
149
+ - lib/avm/eac_webapp_base0/instances/base/install.rb
148
150
  - lib/avm/eac_webapp_base0/instances/deploy.rb
149
151
  - lib/avm/eac_webapp_base0/instances/deploy/appended_directories.rb
150
152
  - lib/avm/eac_webapp_base0/instances/deploy/build.rb
@@ -152,6 +154,8 @@ files:
152
154
  - lib/avm/eac_webapp_base0/instances/deploy/setup_files_unit.rb
153
155
  - lib/avm/eac_webapp_base0/instances/deploy/version.rb
154
156
  - lib/avm/eac_webapp_base0/instances/deploy/write_on_target.rb
157
+ - lib/avm/eac_webapp_base0/instances/processes.rb
158
+ - lib/avm/eac_webapp_base0/instances/processes/web_server.rb
155
159
  - lib/avm/eac_webapp_base0/instances/runners.rb
156
160
  - lib/avm/eac_webapp_base0/instances/runners/apache_host.rb
157
161
  - lib/avm/eac_webapp_base0/instances/runners/apache_path.rb