avm 0.97.1 → 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/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 -0
- 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/with_launcher.rb +0 -1
- data/lib/avm/runner_with/filesystem_traverser.rb +2 -0
- 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/version.rb +1 -1
- metadata +6 -18
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,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,
|
@@ -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
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
|
@@ -64,14 +64,14 @@ dependencies:
|
|
64
64
|
requirements:
|
65
65
|
- - "~>"
|
66
66
|
- !ruby/object:Gem::Version
|
67
|
-
version: '0.
|
67
|
+
version: '0.8'
|
68
68
|
type: :runtime
|
69
69
|
prerelease: false
|
70
70
|
version_requirements: !ruby/object:Gem::Requirement
|
71
71
|
requirements:
|
72
72
|
- - "~>"
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
-
version: '0.
|
74
|
+
version: '0.8'
|
75
75
|
- !ruby/object:Gem::Dependency
|
76
76
|
name: eac_fs
|
77
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -152,20 +152,6 @@ dependencies:
|
|
152
152
|
- - ">="
|
153
153
|
- !ruby/object:Gem::Version
|
154
154
|
version: 0.12.1
|
155
|
-
- !ruby/object:Gem::Dependency
|
156
|
-
name: ruby-progressbar
|
157
|
-
requirement: !ruby/object:Gem::Requirement
|
158
|
-
requirements:
|
159
|
-
- - "~>"
|
160
|
-
- !ruby/object:Gem::Version
|
161
|
-
version: '1.13'
|
162
|
-
type: :runtime
|
163
|
-
prerelease: false
|
164
|
-
version_requirements: !ruby/object:Gem::Requirement
|
165
|
-
requirements:
|
166
|
-
- - "~>"
|
167
|
-
- !ruby/object:Gem::Version
|
168
|
-
version: '1.13'
|
169
155
|
- !ruby/object:Gem::Dependency
|
170
156
|
name: avm-eac_ruby_base1
|
171
157
|
requirement: !ruby/object:Gem::Requirement
|
@@ -354,7 +340,9 @@ files:
|
|
354
340
|
- lib/avm/registry/application_stereotypes/build_available.rb
|
355
341
|
- lib/avm/registry/application_stereotypes/stereotype_builder.rb
|
356
342
|
- lib/avm/registry/applications.rb
|
343
|
+
- lib/avm/registry/base.rb
|
357
344
|
- lib/avm/registry/config_objects.rb
|
345
|
+
- lib/avm/registry/detection_error.rb
|
358
346
|
- lib/avm/registry/file_formats.rb
|
359
347
|
- lib/avm/registry/from_gems.rb
|
360
348
|
- lib/avm/registry/instances.rb
|