eac_tools 0.23.0 → 0.25.0

Sign up to get free protection for your applications and to get access to all the features.
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'