avm 0.97.0 → 0.98.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.
- checksums.yaml +4 -4
- data/lib/avm/applications/base/auto_local_source_path.rb +0 -2
- data/lib/avm/applications/base.rb +1 -1
- data/lib/avm/file_formats/base.rb +0 -1
- data/lib/avm/file_formats/file_result.rb +0 -1
- data/lib/avm/file_formats/search_formatter.rb +0 -2
- data/lib/avm/file_formats/utf8_assert.rb +0 -2
- data/lib/avm/files/deploy.rb +1 -0
- data/lib/avm/instances/base/subcommand_parent.rb +1 -0
- data/lib/avm/instances/base.rb +1 -0
- data/lib/avm/launcher/context/instance_discovery.rb +0 -20
- data/lib/avm/launcher/context.rb +1 -3
- data/lib/avm/registry/application_stereotypes.rb +4 -10
- data/lib/avm/registry/base.rb +26 -0
- data/lib/avm/registry/detection_error.rb +8 -0
- data/lib/avm/registry/from_gems.rb +1 -11
- data/lib/avm/rspec/shared_examples/avm_source_generated.rb +0 -2
- data/lib/avm/rspec/shared_examples/with_launcher.rb +0 -1
- data/lib/avm/runner_with/filesystem_traverser.rb +3 -1
- data/lib/avm/scms/base.rb +1 -0
- data/lib/avm/sources/base/configuration.rb +2 -2
- data/lib/avm/sources/base.rb +1 -0
- data/lib/avm/sources/tests/single.rb +0 -2
- data/lib/avm/version.rb +1 -1
- data/lib/avm.rb +2 -0
- metadata +12 -36
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e42983390965104971cb474b02e9ca77161ae919e59beafe65d7361779f68074
|
4
|
+
data.tar.gz: 0f27ea22f0ced294d7db751ed224c032524656e883178736bee971083d76d456
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 42855e35c57afafd69f5b92ccc980ffb1d5d6e5133bf4f276623ceafcc0cfe18dc10f03dd743e79ad8d3af88a09386fd71235a34c22b4b2fbc3a0cb563d2dbc7
|
7
|
+
data.tar.gz: 69bfa480af64cb4bcb8ac3edeadf178b23412cfe9bb55e1fff27f585e1e3f4fc8fb7a627efd309234a2d854370c277013a6b41c964638923d1da3e625f63fca8
|
data/lib/avm/files/deploy.rb
CHANGED
data/lib/avm/instances/base.rb
CHANGED
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'ruby-progressbar'
|
4
|
-
|
5
3
|
module Avm
|
6
4
|
module Launcher
|
7
5
|
class Context
|
@@ -19,24 +17,19 @@ module Avm
|
|
19
17
|
|
20
18
|
# @return [Array<Avm::Launcher::Instances::Base>]
|
21
19
|
def instances_uncached
|
22
|
-
@progress = ::ProgressBar.create(title: 'Instance discovery', total: 1)
|
23
20
|
root_instance_paths.flat_map { |path| path_instances(path, nil) }
|
24
|
-
ensure
|
25
|
-
@progress&.finish
|
26
21
|
end
|
27
22
|
|
28
23
|
# @param path [Avm::Launcher::Paths::Logical]
|
29
24
|
# @param parent_instance [Avm::Launcher::Instances::Base]
|
30
25
|
# @return [Array<Avm::Launcher::Instances::Base>]
|
31
26
|
def path_instances(path, parent_instance)
|
32
|
-
update_progress_format(path)
|
33
27
|
on_rescued_path_instances(path) do |r|
|
34
28
|
if path.project?
|
35
29
|
parent_instance = ::Avm::Launcher::Instances::Base.instanciate(path, parent_instance)
|
36
30
|
r << path
|
37
31
|
end
|
38
32
|
children = path.children
|
39
|
-
update_progress_count(children)
|
40
33
|
r.concat(children.flat_map { |c| path_instances(c, parent_instance) })
|
41
34
|
end
|
42
35
|
end
|
@@ -53,19 +46,6 @@ module Avm
|
|
53
46
|
r
|
54
47
|
end
|
55
48
|
|
56
|
-
# @param path [Avm::Launcher::Paths::Logical]
|
57
|
-
# @return [void]
|
58
|
-
def update_progress_format(path)
|
59
|
-
@progress.format = "%t (Paths: %c/%C, Current: #{path.logical}) |%B| %a"
|
60
|
-
end
|
61
|
-
|
62
|
-
# @param path [Array<Avm::Launcher::Paths::Logical>]
|
63
|
-
# @return [void]
|
64
|
-
def update_progress_count(children)
|
65
|
-
@progress.total += children.count
|
66
|
-
@progress.increment
|
67
|
-
end
|
68
|
-
|
69
49
|
require_sub __FILE__, require_mode: :kernel
|
70
50
|
end
|
71
51
|
end
|
data/lib/avm/launcher/context.rb
CHANGED
@@ -2,15 +2,13 @@
|
|
2
2
|
|
3
3
|
require 'active_support/core_ext/hash/indifferent_access'
|
4
4
|
|
5
|
-
require 'eac_fs/contexts'
|
6
|
-
require 'eac_fs/core_ext'
|
7
|
-
|
8
5
|
require 'eac_cli/speaker'
|
9
6
|
|
10
7
|
module Avm
|
11
8
|
module Launcher
|
12
9
|
class Context
|
13
10
|
include ::EacRubyUtils::SimpleCache
|
11
|
+
|
14
12
|
enable_speaker
|
15
13
|
|
16
14
|
class << self
|
@@ -2,11 +2,13 @@
|
|
2
2
|
|
3
3
|
module Avm
|
4
4
|
module Registry
|
5
|
-
class ApplicationStereotypes
|
5
|
+
class ApplicationStereotypes < ::Avm::Registry::Base
|
6
6
|
require_sub __FILE__, require_dependency: true
|
7
7
|
enable_simple_cache
|
8
8
|
|
9
|
-
|
9
|
+
def available
|
10
|
+
@available ||= build_available
|
11
|
+
end
|
10
12
|
|
11
13
|
def detect(obj)
|
12
14
|
detect_optional(obj) || raise_not_found(obj)
|
@@ -18,10 +20,6 @@ module Avm
|
|
18
20
|
|
19
21
|
private
|
20
22
|
|
21
|
-
def available_uncached
|
22
|
-
build_available
|
23
|
-
end
|
24
|
-
|
25
23
|
def detect_by_instance_class(obj)
|
26
24
|
return nil unless obj.is_a?(::Class) && obj < ::Avm::Instances::Base
|
27
25
|
|
@@ -39,10 +37,6 @@ module Avm
|
|
39
37
|
|
40
38
|
available.find { |a| a.source_class == obj }
|
41
39
|
end
|
42
|
-
|
43
|
-
def raise_not_found(obj)
|
44
|
-
raise("No registered module valid for #{obj} (Available: #{available.join(', ')})")
|
45
|
-
end
|
46
40
|
end
|
47
41
|
end
|
48
42
|
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Avm
|
4
|
+
module Registry
|
5
|
+
class Base
|
6
|
+
acts_as_abstract
|
7
|
+
common_constructor :module_suffix
|
8
|
+
|
9
|
+
def available
|
10
|
+
raise_abstract __method__
|
11
|
+
end
|
12
|
+
|
13
|
+
def to_s
|
14
|
+
"#{self.class}[#{module_suffix}]"
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def raise_not_found(*args)
|
20
|
+
raise(::Avm::Registry::DetectionError,
|
21
|
+
"No registered module valid for #{args} " \
|
22
|
+
"(Module suffix: #{module_suffix}, Available: #{available.join(', ')})")
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -2,10 +2,9 @@
|
|
2
2
|
|
3
3
|
module Avm
|
4
4
|
module Registry
|
5
|
-
class FromGems
|
5
|
+
class FromGems < ::Avm::Registry::Base
|
6
6
|
enable_abstract_methods
|
7
7
|
enable_simple_cache
|
8
|
-
common_constructor :module_suffix
|
9
8
|
|
10
9
|
def available
|
11
10
|
registered_modules.reject(&:abstract?)
|
@@ -33,21 +32,12 @@ module Avm
|
|
33
32
|
"#{module_suffix}::Base"
|
34
33
|
end
|
35
34
|
|
36
|
-
def to_s
|
37
|
-
"#{self.class}[#{module_suffix}]"
|
38
|
-
end
|
39
|
-
|
40
35
|
def valid_registered_module?(a_module)
|
41
36
|
a_module.is_a?(::Class) && !a_module.abstract?
|
42
37
|
end
|
43
38
|
|
44
39
|
private
|
45
40
|
|
46
|
-
def raise_not_found(*args)
|
47
|
-
raise("No registered module valid for #{args} " \
|
48
|
-
"(Module suffix: #{module_suffix}, Available: #{available.join(', ')})")
|
49
|
-
end
|
50
|
-
|
51
41
|
def registered_modules_uncached
|
52
42
|
registered_gems.flat_map { |registry| modules_from_registry(registry) }
|
53
43
|
.select { |v| valid_registered_module?(v) }.uniq
|
@@ -6,7 +6,6 @@ RSpec.shared_context 'with_launcher' do
|
|
6
6
|
before do
|
7
7
|
Avm::Launcher::Context.current = launcher_controller.new_context
|
8
8
|
launcher_controller.remotes_dir = Dir.mktmpdir
|
9
|
-
allow(ProgressBar).to receive(:create).and_return(double.as_null_object)
|
10
9
|
end
|
11
10
|
|
12
11
|
delegate :application_source_path, :context_set, :init_git, :init_remote, :temp_context,
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'eac_cli/runner'
|
4
|
-
|
4
|
+
|
5
5
|
require 'eac_ruby_utils/core_ext'
|
6
6
|
require 'eac_ruby_utils/settings_provider'
|
7
7
|
|
@@ -13,8 +13,10 @@ module Avm
|
|
13
13
|
common_concern do
|
14
14
|
include ::EacCli::Runner
|
15
15
|
include ::EacFs::Traversable
|
16
|
+
|
16
17
|
enable_settings_provider
|
17
18
|
include TopMethods
|
19
|
+
|
18
20
|
runner_definition do
|
19
21
|
bool_opt '-R', '--recursive', 'Recursive.'
|
20
22
|
bool_opt '--no-recursive', 'No recursive.'
|
data/lib/avm/scms/base.rb
CHANGED
@@ -63,9 +63,9 @@ module Avm
|
|
63
63
|
configuration_with_filename(configuration_paths.first, false)
|
64
64
|
end
|
65
65
|
|
66
|
-
# @return [String]
|
66
|
+
# @return [Enumerable<String>]
|
67
67
|
def parent_configuration_prefix
|
68
|
-
PARENT_CONFIGURATION_SUFFIX + [relative_path]
|
68
|
+
PARENT_CONFIGURATION_SUFFIX + [relative_path.to_path.gsub(/\A\.+|\.+\z/, '')]
|
69
69
|
end
|
70
70
|
|
71
71
|
# @return [EacConfig::PrefixedPathNode]
|
data/lib/avm/sources/base.rb
CHANGED
data/lib/avm/version.rb
CHANGED
data/lib/avm.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: avm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.98.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eduardo H. Bogoni
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-
|
11
|
+
date: 2025-09-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: clipboard
|
@@ -36,20 +36,14 @@ dependencies:
|
|
36
36
|
requirements:
|
37
37
|
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '0.
|
40
|
-
- - ">="
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
version: 0.43.1
|
39
|
+
version: '0.44'
|
43
40
|
type: :runtime
|
44
41
|
prerelease: false
|
45
42
|
version_requirements: !ruby/object:Gem::Requirement
|
46
43
|
requirements:
|
47
44
|
- - "~>"
|
48
45
|
- !ruby/object:Gem::Version
|
49
|
-
version: '0.
|
50
|
-
- - ">="
|
51
|
-
- !ruby/object:Gem::Version
|
52
|
-
version: 0.43.1
|
46
|
+
version: '0.44'
|
53
47
|
- !ruby/object:Gem::Dependency
|
54
48
|
name: eac_config
|
55
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -70,14 +64,14 @@ dependencies:
|
|
70
64
|
requirements:
|
71
65
|
- - "~>"
|
72
66
|
- !ruby/object:Gem::Version
|
73
|
-
version: '0.
|
67
|
+
version: '0.8'
|
74
68
|
type: :runtime
|
75
69
|
prerelease: false
|
76
70
|
version_requirements: !ruby/object:Gem::Requirement
|
77
71
|
requirements:
|
78
72
|
- - "~>"
|
79
73
|
- !ruby/object:Gem::Version
|
80
|
-
version: '0.
|
74
|
+
version: '0.8'
|
81
75
|
- !ruby/object:Gem::Dependency
|
82
76
|
name: eac_fs
|
83
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -158,40 +152,20 @@ dependencies:
|
|
158
152
|
- - ">="
|
159
153
|
- !ruby/object:Gem::Version
|
160
154
|
version: 0.12.1
|
161
|
-
- !ruby/object:Gem::Dependency
|
162
|
-
name: ruby-progressbar
|
163
|
-
requirement: !ruby/object:Gem::Requirement
|
164
|
-
requirements:
|
165
|
-
- - "~>"
|
166
|
-
- !ruby/object:Gem::Version
|
167
|
-
version: '1.13'
|
168
|
-
type: :runtime
|
169
|
-
prerelease: false
|
170
|
-
version_requirements: !ruby/object:Gem::Requirement
|
171
|
-
requirements:
|
172
|
-
- - "~>"
|
173
|
-
- !ruby/object:Gem::Version
|
174
|
-
version: '1.13'
|
175
155
|
- !ruby/object:Gem::Dependency
|
176
156
|
name: avm-eac_ruby_base1
|
177
157
|
requirement: !ruby/object:Gem::Requirement
|
178
158
|
requirements:
|
179
159
|
- - "~>"
|
180
160
|
- !ruby/object:Gem::Version
|
181
|
-
version: '0.
|
182
|
-
- - ">="
|
183
|
-
- !ruby/object:Gem::Version
|
184
|
-
version: 0.37.1
|
161
|
+
version: '0.38'
|
185
162
|
type: :development
|
186
163
|
prerelease: false
|
187
164
|
version_requirements: !ruby/object:Gem::Requirement
|
188
165
|
requirements:
|
189
166
|
- - "~>"
|
190
167
|
- !ruby/object:Gem::Version
|
191
|
-
version: '0.
|
192
|
-
- - ">="
|
193
|
-
- !ruby/object:Gem::Version
|
194
|
-
version: 0.37.1
|
168
|
+
version: '0.38'
|
195
169
|
- !ruby/object:Gem::Dependency
|
196
170
|
name: avm-git
|
197
171
|
requirement: !ruby/object:Gem::Requirement
|
@@ -201,7 +175,7 @@ dependencies:
|
|
201
175
|
version: '0.20'
|
202
176
|
- - ">="
|
203
177
|
- !ruby/object:Gem::Version
|
204
|
-
version: 0.20.
|
178
|
+
version: 0.20.2
|
205
179
|
type: :development
|
206
180
|
prerelease: false
|
207
181
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -211,7 +185,7 @@ dependencies:
|
|
211
185
|
version: '0.20'
|
212
186
|
- - ">="
|
213
187
|
- !ruby/object:Gem::Version
|
214
|
-
version: 0.20.
|
188
|
+
version: 0.20.2
|
215
189
|
- !ruby/object:Gem::Dependency
|
216
190
|
name: eac_ruby_gem_support
|
217
191
|
requirement: !ruby/object:Gem::Requirement
|
@@ -366,7 +340,9 @@ files:
|
|
366
340
|
- lib/avm/registry/application_stereotypes/build_available.rb
|
367
341
|
- lib/avm/registry/application_stereotypes/stereotype_builder.rb
|
368
342
|
- lib/avm/registry/applications.rb
|
343
|
+
- lib/avm/registry/base.rb
|
369
344
|
- lib/avm/registry/config_objects.rb
|
345
|
+
- lib/avm/registry/detection_error.rb
|
370
346
|
- lib/avm/registry/file_formats.rb
|
371
347
|
- lib/avm/registry/from_gems.rb
|
372
348
|
- lib/avm/registry/instances.rb
|