eac_tools 0.23.0 → 0.25.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 (44) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +23 -23
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm/avm.gemspec +3 -3
  5. data/sub/avm/lib/avm/entries/base/inherited_entry_value.rb +31 -0
  6. data/sub/avm/lib/avm/entries/base/uri_component_entry_value.rb +71 -0
  7. data/sub/avm/lib/avm/entries/base.rb +2 -10
  8. data/sub/avm/lib/avm/entries/entry.rb +10 -1
  9. data/sub/avm/lib/avm/entries/uri_builder.rb +4 -0
  10. data/sub/avm/lib/avm/instances/base/auto_values/filesystem.rb +0 -5
  11. data/sub/avm/lib/avm/instances/base/auto_values/install.rb +20 -15
  12. data/sub/avm/lib/avm/instances/entry_keys.rb +4 -3
  13. data/sub/avm/lib/avm/sources/base/application.rb +34 -0
  14. data/sub/avm/lib/avm/sources/base/configuration.rb +2 -0
  15. data/sub/avm/lib/avm/sources/base/testing.rb +1 -1
  16. data/sub/avm/lib/avm/version.rb +1 -1
  17. data/sub/avm/spec/lib/avm/instances/base_spec.rb +17 -1
  18. data/sub/avm/spec/lib/avm/instances/base_spec_configs_storage.yml +7 -1
  19. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
  20. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec.rb +8 -1
  21. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/Gemfile.lock +1 -0
  22. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/dashed-mygem/_gitignore +2 -0
  23. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/Gemfile.lock +1 -0
  24. data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/source_generators/base_spec_files/mygem/_gitignore +2 -0
  25. data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +2 -2
  26. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/file_unit.rb +1 -1
  27. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
  28. data/sub/avm-tools/avm-tools.gemspec +3 -3
  29. data/sub/avm-tools/lib/avm/tools/runner/app_src/info.rb +10 -8
  30. data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
  31. data/sub/eac_config/eac_config.gemspec +2 -2
  32. data/sub/eac_config/lib/eac_config/entry_path.rb +6 -1
  33. data/sub/eac_config/lib/eac_config/version.rb +1 -1
  34. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_accessors.rb +36 -0
  35. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_initialize.rb +14 -4
  36. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/instance_initialize.rb +15 -4
  37. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb +20 -15
  38. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/list.rb +9 -1
  39. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/value.rb +5 -0
  40. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb +17 -2
  41. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
  42. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb +26 -0
  43. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb +32 -82
  44. metadata +28 -20
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d37f8e08239e5bac225ad919b4805592413d710cf364e354098aedcd2a9ab758
4
- data.tar.gz: 7f57813fb27c9757cc6c03b016d69a9e777ccec79a875d4b946ee7136642d04b
3
+ metadata.gz: b50382fd923923ea176726318a5adeed1194cdc1aac56b3d70c2211a030d2e86
4
+ data.tar.gz: f35a6fe715fc7d265f046e3692201a8edbab95e16cc324942956ab31804bff0d
5
5
  SHA512:
6
- metadata.gz: a2027d28a82968c9d2e71b7699be1829e16b7752d7a727d018822e0dfc9f7b4bbf4bd24f491070071b30acd2c7bd61717cc0dbe102fec922ead1af734ac42f83
7
- data.tar.gz: e5343d8c9b7b5b20d46ccf1393b2254babe9d2320739902a910fc86b61c9aa50555f9732485f01d79d52825e31d46a6fed87205f5131157b80af548eb48afc97
6
+ metadata.gz: 8495da6e5565b3b03901d8c11a4f5bfe1d08fbe02cfafed82d59c4d33c69e92a43f8042e78e29ac32416eeed25250ab46088e9ca21193e0a912db82c2987c3ef
7
+ data.tar.gz: 81f4b76062b762acd52c63f9b4ec03bbb8e7d599032d7235ea24f2f291001664c3674fbb4db74d0e8f31783e36760f7a59427e1893d38ad087eaa34b24d87b29
data/Gemfile.lock CHANGED
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.23.0)
5
- avm (~> 0.35, >= 0.35.1)
4
+ eac_tools (0.25.0)
5
+ avm (~> 0.39)
6
6
  avm-eac_asciidoctor_base0 (~> 0.5)
7
7
  avm-eac_generic_base0 (~> 0.5)
8
8
  avm-eac_latex_base0 (~> 0.1, >= 0.1.2)
@@ -10,11 +10,11 @@ PATH
10
10
  avm-eac_rails_base1 (~> 0.5)
11
11
  avm-eac_redmine_base0 (~> 0.12)
12
12
  avm-eac_redmine_plugin_base0 (~> 0.3)
13
- avm-eac_ruby_base1 (~> 0.19)
14
- avm-eac_webapp_base0 (~> 0.4)
13
+ avm-eac_ruby_base1 (~> 0.19, >= 0.19.1)
14
+ avm-eac_webapp_base0 (~> 0.4, >= 0.4.1)
15
15
  avm-eac_wordpress_base0 (~> 0.1, >= 0.1.2)
16
- avm-tools (~> 0.132, >= 0.132.1)
17
- eac_ruby_utils (~> 0.98)
16
+ avm-tools (~> 0.133)
17
+ eac_ruby_utils (~> 0.101)
18
18
 
19
19
  PATH
20
20
  remote: sub/avm-eac_asciidoctor_base0
@@ -80,7 +80,7 @@ PATH
80
80
  PATH
81
81
  remote: sub/avm-eac_ruby_base1
82
82
  specs:
83
- avm-eac_ruby_base1 (0.19.0)
83
+ avm-eac_ruby_base1 (0.19.1)
84
84
  avm (~> 0.35, >= 0.35.1)
85
85
  avm-eac_generic_base0 (~> 0.5)
86
86
  eac_ruby_utils (~> 0.98)
@@ -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.4.0)
92
- avm (~> 0.35, >= 0.35.1)
91
+ avm-eac_webapp_base0 (0.4.1)
92
+ avm (~> 0.39)
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.98)
96
+ eac_ruby_utils (~> 0.101)
97
97
 
98
98
  PATH
99
99
  remote: sub/avm-eac_wordpress_base0
@@ -106,16 +106,16 @@ PATH
106
106
  PATH
107
107
  remote: sub/avm-tools
108
108
  specs:
109
- avm-tools (0.132.1)
109
+ avm-tools (0.133.0)
110
110
  aranha-parsers (~> 0.14, >= 0.14.1)
111
- avm (~> 0.35, >= 0.35.1)
112
- avm-eac_ruby_base1 (~> 0.19)
111
+ avm (~> 0.37)
112
+ avm-eac_ruby_base1 (~> 0.19, >= 0.19.1)
113
113
  avm-eac_ubuntu_base0 (~> 0.3)
114
114
  avm-files (~> 0.3, >= 0.3.2)
115
115
  avm-git (~> 0.4)
116
116
  clipboard (~> 1.3, >= 1.3.6)
117
117
  curb (~> 0.9, >= 0.9.11)
118
- eac_git (~> 0.12, >= 0.12.1)
118
+ eac_git (~> 0.12, >= 0.12.2)
119
119
  eac_ruby_base0 (~> 0.16, >= 0.16.6)
120
120
  eac_templates (~> 0.3, >= 0.3.1)
121
121
  git (~> 1.11)
@@ -124,12 +124,12 @@ PATH
124
124
  PATH
125
125
  remote: sub/avm
126
126
  specs:
127
- avm (0.36.0)
127
+ avm (0.39.0)
128
128
  eac_cli (~> 0.27, >= 0.27.8)
129
- eac_config (~> 0.10)
129
+ eac_config (~> 0.11)
130
130
  eac_docker (~> 0.4, >= 0.4.2)
131
- eac_git (~> 0.12, >= 0.12.1)
132
- eac_ruby_utils (~> 0.98)
131
+ eac_git (~> 0.12, >= 0.12.2)
132
+ eac_ruby_utils (~> 0.101)
133
133
  eac_templates (~> 0.3, >= 0.3.1)
134
134
  filesize (~> 0.2)
135
135
  htmlbeautifier (~> 1.4, >= 1.4.2)
@@ -146,9 +146,9 @@ PATH
146
146
  PATH
147
147
  remote: sub/eac_config
148
148
  specs:
149
- eac_config (0.10.0)
150
- addressable
151
- eac_ruby_utils (~> 0.97)
149
+ eac_config (0.11.0)
150
+ addressable (~> 2.8)
151
+ eac_ruby_utils (~> 0.100)
152
152
 
153
153
  PATH
154
154
  remote: sub/eac_docker
@@ -177,7 +177,7 @@ PATH
177
177
  PATH
178
178
  remote: sub/eac_ruby_utils
179
179
  specs:
180
- eac_ruby_utils (0.98.0)
180
+ eac_ruby_utils (0.101.0)
181
181
  activesupport (>= 4, < 7)
182
182
  addressable (~> 2.6)
183
183
  bundler
@@ -229,7 +229,7 @@ GEM
229
229
  parslet (~> 2.0)
230
230
  curb (0.9.11)
231
231
  diff-lcs (1.5.0)
232
- eac_git (0.12.1)
232
+ eac_git (0.12.2)
233
233
  eac_ruby_utils (~> 0.83)
234
234
  parseconfig (~> 1.0, >= 1.0.8)
235
235
  eac_rest (0.6.1)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.23.0'
4
+ VERSION = '0.25.0'
5
5
  end
data/sub/avm/avm.gemspec CHANGED
@@ -13,10 +13,10 @@ Gem::Specification.new do |s|
13
13
  s.files = Dir['{lib}/**/*']
14
14
 
15
15
  s.add_dependency 'eac_cli', '~> 0.27', '>= 0.27.8'
16
- s.add_dependency 'eac_config', '~> 0.10'
16
+ s.add_dependency 'eac_config', '~> 0.11'
17
17
  s.add_dependency 'eac_docker', '~> 0.4', '>= 0.4.2'
18
- s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.1'
19
- s.add_dependency 'eac_ruby_utils', '~> 0.98'
18
+ s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.2'
19
+ s.add_dependency 'eac_ruby_utils', '~> 0.101'
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'
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/entries/uri_builder'
4
+ require 'eac_config/entry_path'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module Entries
9
+ module Base
10
+ class InheritedEntryValue
11
+ enable_method_class
12
+ common_constructor :entries_provider, :source_entry_suffix, :target_entry_suffix, :block,
13
+ block_arg: true
14
+
15
+ def result
16
+ self_entry_value.if_present do |instance_id|
17
+ other_entry_value(instance_id).if_present(&block)
18
+ end
19
+ end
20
+
21
+ def other_entry_value(instance_id)
22
+ ::Avm::Instances::Base.by_id(instance_id).read_entry_optional(target_entry_suffix)
23
+ end
24
+
25
+ def self_entry_value
26
+ entries_provider.read_entry_optional(source_entry_suffix)
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/entries/uri_builder'
4
+ require 'eac_config/entry_path'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module Entries
9
+ module Base
10
+ class UriComponentEntryValue
11
+ enable_method_class
12
+
13
+ enable_listable
14
+ lists.add_symbol :option, :default_value, :inherited_value_block
15
+
16
+ common_constructor :entries_provider, :component_entry_path, :options, default: [{}] do
17
+ self.component_entry_path = ::EacConfig::EntryPath.assert(component_entry_path)
18
+ self.options = self.class.lists.option.hash_keys_validate!(options)
19
+ end
20
+
21
+ def default_value
22
+ options[OPTION_DEFAULT_VALUE].call_if_proc
23
+ end
24
+
25
+ def inherited_result
26
+ entries_provider.inherited_entry_value(
27
+ id_entry_path.to_string,
28
+ component_entry_path.to_string,
29
+ &inherited_value_block
30
+ )
31
+ end
32
+
33
+ def inherited_value_block
34
+ options[OPTION_INHERITED_VALUE_BLOCK]
35
+ end
36
+
37
+ # @return [EacConfig::EntryPath]
38
+ def id_entry_path
39
+ root_entry_path + %w[id]
40
+ end
41
+
42
+ # @return [String, nil]
43
+ def result
44
+ url_entry_value || inherited_result || default_value
45
+ end
46
+
47
+ # @return [EacConfig::EntryPath]
48
+ def root_entry_path
49
+ component_entry_path[0..-2]
50
+ end
51
+
52
+ # @return [Avm::Entries::Entry]
53
+ def url_entry
54
+ entries_provider.entry((root_entry_path + %w[url]).to_string)
55
+ end
56
+
57
+ def url_entry_value
58
+ return unless url_entry.context_found?
59
+
60
+ ::Avm::Entries::UriBuilder.from_source(url_entry.value.to_uri)
61
+ .avm_field_get(component)
62
+ end
63
+
64
+ # @return [String]
65
+ def component
66
+ component_entry_path.last
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
@@ -6,6 +6,8 @@ require 'avm/entries/entry'
6
6
  module Avm
7
7
  module Entries
8
8
  module Base
9
+ require_sub __FILE__, require_dependency: true
10
+
9
11
  def entries_provider_id
10
12
  id
11
13
  end
@@ -32,16 +34,6 @@ module Avm
32
34
  end
33
35
  (path_prefix + entry_suffix).join('.')
34
36
  end
35
-
36
- def inherited_entry_value(source_entry_suffix, target_entry_suffix, &block)
37
- read_entry_optional(source_entry_suffix).if_present do |instance_id|
38
- other_entry_value(instance_id, target_entry_suffix).if_present(&block)
39
- end
40
- end
41
-
42
- def other_entry_value(instance_id, entry_suffix)
43
- ::Avm::Instances::Base.by_id(instance_id).read_entry_optional(entry_suffix)
44
- end
45
37
  end
46
38
  end
47
39
  end
@@ -10,7 +10,16 @@ module Avm
10
10
  common_constructor :parent, :suffix, :options
11
11
 
12
12
  def auto_value
13
- ::Avm::Entries::AutoValues::Entry.new(parent, suffix).value
13
+ auto_value_entry.value
14
+ end
15
+
16
+ def auto_value_entry
17
+ @auto_value_entry ||= ::Avm::Entries::AutoValues::Entry.new(parent, suffix)
18
+ end
19
+
20
+ # @return [Boolean]
21
+ def context_found?
22
+ context_entry.found?
14
23
  end
15
24
 
16
25
  def full_path
@@ -42,6 +42,10 @@ module Avm
42
42
 
43
43
  common_constructor :data, default: [{}]
44
44
 
45
+ def avm_field_get(avm_field)
46
+ field_get(translate_field(avm_field))
47
+ end
48
+
45
49
  def field_get(name)
46
50
  data[name.to_sym].if_present(&:to_s)
47
51
  end
@@ -12,11 +12,6 @@ module Avm
12
12
  ::Avm::Instances::EntryKeys::FS_PATH) { |v| v + '/' + id }
13
13
  end
14
14
 
15
- def auto_data_fs_path
16
- inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID,
17
- ::Avm::Instances::EntryKeys::DATA_FS_PATH) { |v| v + '/' + id }
18
- end
19
-
20
15
  def auto_fs_url
21
16
  auto_fs_url_with_install || auto_fs_url_without_install
22
17
  end
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'avm/entries/uri_builder'
3
4
  require 'avm/instances/entry_keys'
4
5
 
5
6
  module Avm
@@ -7,25 +8,29 @@ module Avm
7
8
  class Base
8
9
  module AutoValues
9
10
  module Install
10
- def auto_install_groupname
11
- inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID,
12
- ::Avm::Instances::EntryKeys::INSTALL_GROUPNAME) ||
13
- read_entry_optional(::Avm::Instances::EntryKeys::INSTALL_USERNAME)
14
- end
15
-
16
- def auto_install_hostname
17
- inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID,
18
- ::Avm::Instances::EntryKeys::INSTALL_HOSTNAME)
11
+ def auto_install_data_path
12
+ uri_component_entry_value(
13
+ ::Avm::Instances::EntryKeys::INSTALL_DATA_PATH,
14
+ inherited_value_block: ->(v) { v + '/' + id }
15
+ )
19
16
  end
20
17
 
21
- def auto_install_port
22
- inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID,
23
- ::Avm::Instances::EntryKeys::INSTALL_PORT) || 22
18
+ def auto_install_groupname
19
+ uri_component_entry_value(
20
+ ::Avm::Instances::EntryKeys::INSTALL_GROUPNAME,
21
+ default_value: lambda do
22
+ read_entry_optional(::Avm::Instances::EntryKeys::INSTALL_USERNAME)
23
+ end
24
+ )
24
25
  end
25
26
 
26
- def auto_install_username
27
- inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID,
28
- ::Avm::Instances::EntryKeys::INSTALL_USERNAME)
27
+ ::Avm::Entries::UriBuilder::ENTRIES_FIELDS.each do |component|
28
+ method_suffix = "install_#{component}"
29
+ define_method "auto_#{method_suffix}" do
30
+ uri_component_entry_value(
31
+ ::Avm::Instances::EntryKeys.const_get(method_suffix.underscore.upcase)
32
+ )
33
+ end
29
34
  end
30
35
 
31
36
  def auto_install_url
@@ -1,11 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'avm/entries/uri_builder'
3
4
  require 'eac_ruby_utils/core_ext'
4
5
 
5
6
  module Avm
6
7
  module Instances
7
8
  module EntryKeys
8
- URI_FIELDS = %i[fragment hostname password path port query scheme url username].freeze
9
+ URI_FIELDS = ::Avm::Entries::UriBuilder::ENTRIES_FIELDS + %w[url]
9
10
 
10
11
  class << self
11
12
  def all
@@ -44,12 +45,12 @@ module Avm
44
45
  end
45
46
 
46
47
  {
47
- '' => %w[data_fs_path fs_path name source_instance_id],
48
+ '' => %w[fs_path name source_instance_id],
48
49
  admin: URI_FIELDS + %w[api_key],
49
50
  database: URI_FIELDS + %w[id limit name system timeout extra],
50
51
  docker: %w[registry],
51
52
  fs: %w[url],
52
- install: URI_FIELDS + %w[id groupname],
53
+ install: URI_FIELDS + %w[id data_path groupname],
53
54
  mailer: {
54
55
  '' => %w[id from reply_to],
55
56
  smtp: URI_FIELDS + %w[address domain authentication openssl_verify_mode starttls_auto tls]
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/applications/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module Sources
8
+ class Base
9
+ module Application
10
+ APPLICATION_NAME_KEY = 'application'
11
+
12
+ # @return [Avm::Applications::Base]
13
+ def application
14
+ @application ||= ::Avm::Applications::Base.new(application_id)
15
+ end
16
+
17
+ # @return [String]
18
+ def application_id
19
+ application_id_by_configuration || application_id_by_directory
20
+ end
21
+
22
+ # @return [String, nil]
23
+ def application_id_by_configuration
24
+ configuration.entry(APPLICATION_NAME_KEY).value
25
+ end
26
+
27
+ # @return [String]
28
+ def application_id_by_directory
29
+ path.basename.to_path
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -24,6 +24,8 @@ module Avm
24
24
 
25
25
  # @return [EacRubyUtils::Envs::Command, nil]
26
26
  def configuration_value_to_env_command(value)
27
+ return value if value.is_a?(::EacRubyUtils::Envs::Command)
28
+
27
29
  configuration_value_to_shell_words(value).if_present { |v| env.command(v).chdir(path) }
28
30
  end
29
31
 
@@ -57,7 +57,7 @@ module Avm
57
57
 
58
58
  def configured_enumerable_value_as_test_commands(value)
59
59
  configured_hash_value_as_test_commands(
60
- value.each_with_index.map { |v| ["test_#{v[1]}", v[0]] }.to_h
60
+ value.each_with_index.map { |v, i| ["test_#{i}", v] }.to_h
61
61
  )
62
62
  end
63
63
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- VERSION = '0.36.0'
4
+ VERSION = '0.39.0'
5
5
  end
@@ -16,7 +16,7 @@ RSpec.describe ::Avm::Instances::Base do
16
16
  {
17
17
  'app_0' => {
18
18
  fs_path: '/fs_root/app_0',
19
- data_fs_path: '/data_fs_root/app_0',
19
+ ::Avm::Instances::EntryKeys::INSTALL_DATA_PATH => '/data_fs_root/app_0',
20
20
  ::Avm::Instances::EntryKeys::DATABASE_NAME => 'app_0',
21
21
  ::Avm::Instances::EntryKeys::DATABASE_USERNAME => 'user1',
22
22
  ::Avm::Instances::EntryKeys::DATABASE_PASSWORD => 'pass1',
@@ -57,6 +57,22 @@ RSpec.describe ::Avm::Instances::Base do
57
57
  ::Avm::Instances::EntryKeys::INSTALL_GROUPNAME => 'group4',
58
58
  ::Avm::Instances::EntryKeys::INSTALL_URL => 'ssh://user4@host4.net'
59
59
  },
60
+ 'app_5' => {
61
+ ::Avm::Instances::EntryKeys::INSTALL_SCHEME => 'ssh',
62
+ ::Avm::Instances::EntryKeys::INSTALL_HOSTNAME => 'host5.net',
63
+ ::Avm::Instances::EntryKeys::INSTALL_PORT => '2222',
64
+ ::Avm::Instances::EntryKeys::INSTALL_USERNAME => 'user5',
65
+ ::Avm::Instances::EntryKeys::INSTALL_PASSWORD => 'passwd5',
66
+ ::Avm::Instances::EntryKeys::INSTALL_PATH => '/path/to/app5'
67
+ },
68
+ 'app_6' => {
69
+ ::Avm::Instances::EntryKeys::INSTALL_SCHEME => 'ssh',
70
+ ::Avm::Instances::EntryKeys::INSTALL_HOSTNAME => 'host5.net',
71
+ ::Avm::Instances::EntryKeys::INSTALL_PORT => '2222',
72
+ ::Avm::Instances::EntryKeys::INSTALL_USERNAME => 'user5',
73
+ ::Avm::Instances::EntryKeys::INSTALL_PASSWORD => 'passwd5',
74
+ ::Avm::Instances::EntryKeys::INSTALL_PATH => '/path/to/app5'
75
+ },
60
76
  'mailer_0' => {
61
77
  ::Avm::Instances::EntryKeys::MAILER_FROM => 'noreply@example.net',
62
78
  ::Avm::Instances::EntryKeys::MAILER_REPLY_TO => '',
@@ -4,9 +4,9 @@ app_0:
4
4
  id: app_1
5
5
  app_1:
6
6
  fs_path: /fs_root
7
- data_fs_path: /data_fs_root
8
7
  install:
9
8
  id: app_2
9
+ data_path: /data_fs_root
10
10
  database:
11
11
  name: app_1_db
12
12
  username: user1
@@ -28,6 +28,12 @@ app_4:
28
28
  username: user4
29
29
  hostname: host4.net
30
30
  groupname: group4
31
+ app_5:
32
+ install:
33
+ url: ssh://user5:passwd5@host5.net:2222/path/to/app5
34
+ app_6:
35
+ install:
36
+ id: app_5
31
37
  mailer_0:
32
38
  mailer:
33
39
  from: 'noreply@example.net'
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRubyBase1
5
- VERSION = '0.19.0'
5
+ VERSION = '0.19.1'
6
6
  end
7
7
  end
@@ -33,10 +33,17 @@ RSpec.describe ::Avm::EacRubyBase1::SourceGenerators::Base do
33
33
 
34
34
  def directory_to_h(dir)
35
35
  dir.children.map do |child|
36
- [child.basename.to_path, fs_object_to_h(child)]
36
+ [fs_object_basename(child), fs_object_to_h(child)]
37
37
  end.to_h
38
38
  end
39
39
 
40
+ # @return [String]
41
+ def fs_object_basename(obj)
42
+ r = obj.basename.to_path
43
+ r = '.gitignore' if r == '_gitignore'
44
+ r
45
+ end
46
+
40
47
  def fs_object_to_h(obj)
41
48
  if obj.file?
42
49
  file_to_h(obj)
@@ -0,0 +1 @@
1
+ Is expected that this content be replaced by "TRUNCATED\n".
@@ -0,0 +1 @@
1
+ Is expected that this content be replaced by "TRUNCATED\n".
@@ -12,11 +12,11 @@ Gem::Specification.new do |s|
12
12
 
13
13
  s.files = Dir['{lib,template}/**/*']
14
14
 
15
- s.add_dependency 'avm', '~> 0.35', '>= 0.35.1'
15
+ s.add_dependency 'avm', '~> 0.39'
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.98'
19
+ s.add_dependency 'eac_ruby_utils', '~> 0.101'
20
20
 
21
21
  s.add_development_dependency 'eac_ruby_gem_support', '~> 0.2'
22
22
  end
@@ -23,7 +23,7 @@ module Avm
23
23
  end
24
24
 
25
25
  def source_path
26
- ::File.join(instance.read_entry(:data_fs_path), data_key.to_s)
26
+ ::File.join(instance.install_data_path, data_key.to_s)
27
27
  end
28
28
 
29
29
  def target_path
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacWebappBase0
5
- VERSION = '0.4.0'
5
+ VERSION = '0.4.1'
6
6
  end
7
7
  end
@@ -15,14 +15,14 @@ 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.35', '>= 0.35.1'
19
- s.add_dependency 'avm-eac_ruby_base1', '~> 0.19'
18
+ s.add_dependency 'avm', '~> 0.37'
19
+ s.add_dependency 'avm-eac_ruby_base1', '~> 0.19', '>= 0.19.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'
23
23
  s.add_dependency 'clipboard', '~> 1.3', '>= 1.3.6'
24
24
  s.add_dependency 'curb', '~> 0.9', '>= 0.9.11'
25
- s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.1'
25
+ s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.2'
26
26
  s.add_dependency 'eac_ruby_base0', '~> 0.16', '>= 0.16.6'
27
27
  s.add_dependency 'eac_templates', '~> 0.3', '>= 0.3.1'
28
28
  s.add_dependency 'git', '~> 1.11'