avm-tools 0.153.0 → 0.155.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 81478418cd60d82e6c0828d04c2b74fd283329a3b23f47273633e8742513b1d4
4
- data.tar.gz: e96c1b7e099acb3608e91b4862be9f1f05096b653c4abeb2d9f50eef80b8e3ea
3
+ metadata.gz: b10be0d297c764a5017d6efeda6e2579d1c357b4f2aba4244945a71c6413cecd
4
+ data.tar.gz: 04d00706c47e85dbd52d1b557d4f89b8b479929b8f5224f5285297998f5980c1
5
5
  SHA512:
6
- metadata.gz: 137cfa29dcaf64e61ef5191e85b1d65b715684670496fafdc6457463bace52d5999acac8ec075851347640e6e6813b5df42fbb29e21ec05f31509b9b46f86859
7
- data.tar.gz: 427774d492f2d5b06c874c31be4720bec18dc380ca40aa2fafae4163a88e1bbd05bdab7e5c1bbdd75d2461c82084695f03b7fae3fd1e3495330ce7f2670e5873
6
+ metadata.gz: 010b372df4847200c05968eb390013cadac7138372e73554d7086c435d9983687efc69d891eb6eed02d4c03793ba46135075987db8ea442422ea285d10e12b22
7
+ data.tar.gz: f88f22d3bc4645de314c8e3c8eea6a1ec8752841e1bbdd0209228e5b33e54007ddbc875fc4b399009c25bae8f862021c571c26a6e21e21ebd2d985a22795ff0f
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_base0/core_ext'
4
+
5
+ module Avm
6
+ module Tools
7
+ class Runner
8
+ class Instance < ::Avm::Instances::Runner
9
+ class Entry
10
+ runner_with :help, :output do
11
+ desc 'Retorna valor de uma entrada de instância AVM.'
12
+ bool_opt '-d', '--debug'
13
+ pos_arg :envvar_suffix, repeat: true
14
+ end
15
+
16
+ def run
17
+ debug
18
+ run_output
19
+ end
20
+
21
+ def output_content
22
+ parsed.envvar_suffix.map { |entry_key| "#{instance.entry(entry_key).value}\n" }.join
23
+ end
24
+
25
+ def debug
26
+ return unless parsed.debug?
27
+
28
+ parsed.envvar_suffix.map { |entry_key| debug_entry(entry_key) }
29
+ end
30
+
31
+ def debug_entry(entry_key)
32
+ infov 'Entry key', entry_key
33
+ e = instance.entry(entry_key)
34
+ infov ' * Type', e.class
35
+ infov ' * Full path', e.full_path
36
+ infov ' * Found?', e.context_found?
37
+ infov ' * Value', e.value
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_base0/core_ext'
4
+
5
+ module Avm
6
+ module Tools
7
+ class Runner
8
+ class Instance < ::Avm::Instances::Runner
9
+ class System
10
+ ENVVAR_PARSER = /\A([^=]+)=(.+)\z/.to_parser do |m|
11
+ ::Struct.new(:name, :value).new(m[1].strip, m[2].strip)
12
+ end
13
+
14
+ runner_with :help do
15
+ desc 'Execute a command in the instance\'s environment.'
16
+ arg_opt '-C', '--chdir'
17
+ arg_opt '-e', '--envvar', repeat: true
18
+ pos_arg :command_args, required: true, repeat: true
19
+ end
20
+
21
+ delegate :command_args, to: :parsed
22
+
23
+ def run
24
+ start_banner
25
+ run_command
26
+ end
27
+
28
+ # @return [Pathname]
29
+ def chdir
30
+ (parsed.chdir || instance.install_path).to_pathname
31
+ end
32
+
33
+ private
34
+
35
+ # @return [EacRubyUtils::Envs::Command]
36
+ def command_without_envvars
37
+ instance.host_env.command(*command_args).chdir(chdir)
38
+ end
39
+
40
+ # @return [EacRubyUtils::Envs::Command]
41
+ def command
42
+ envvars.inject(command_without_envvars) { |a, e| a.envvar(e.name, e.value) }
43
+ end
44
+
45
+ # @return [Hash<String, String>]
46
+ def envvars
47
+ parsed.envvar.map { |v| ENVVAR_PARSER.parse!(v) }
48
+ end
49
+
50
+ def run_command
51
+ command.system!
52
+ end
53
+
54
+ def start_banner
55
+ infov 'Instance', instance
56
+ infov 'Environment', instance.host_env
57
+ infov 'Directory', chdir
58
+ infov 'Envvars', envvars.map { |e| "#{e.name}=#{e.value}" }.join(', ')
59
+ infov 'Command', ::Shellwords.join(command_args)
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -11,10 +11,10 @@ module Avm
11
11
  class Complete
12
12
  runner_with :confirmation, :help do
13
13
  desc 'Closes a issue in a Git repository.'
14
- bool_opt '-f', '--uncomplete-unfail', 'Do not exit with error if issue is not' \
15
- ' completed or is invalid.'
16
- arg_opt '-s', '--skip-validations', 'Does not validate conditions on <validations>' \
17
- ' (Comma separated value).'
14
+ bool_opt '-f', '--uncomplete-unfail', 'Do not exit with error if issue is not ' \
15
+ 'completed or is invalid.'
16
+ arg_opt '-s', '--skip-validations', 'Does not validate conditions on <validations> ' \
17
+ '(Comma separated value).'
18
18
  end
19
19
 
20
20
  def run
@@ -25,7 +25,7 @@ module Avm
25
25
 
26
26
  DUMP_EXPIRE_TIME = 1.day
27
27
  NO_DUMP_MESSAGE = 'Dump "%s" already exist and rewrite options was no setted nor ' \
28
- 'dump was expired.'
28
+ 'dump was expired.'
29
29
 
30
30
  # @return [Class]
31
31
  def data_performer_class
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.153.0'
5
+ VERSION = '0.155.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avm-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.153.0
4
+ version: 0.155.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-27 00:00:00.000000000 Z
11
+ date: 2023-10-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha-parsers
@@ -44,20 +44,20 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.30'
47
+ version: '0.31'
48
48
  - - ">="
49
49
  - !ruby/object:Gem::Version
50
- version: 0.30.3
50
+ version: 0.31.2
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
55
  - - "~>"
56
56
  - !ruby/object:Gem::Version
57
- version: '0.30'
57
+ version: '0.31'
58
58
  - - ">="
59
59
  - !ruby/object:Gem::Version
60
- version: 0.30.3
60
+ version: 0.31.2
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: avm-eac_ubuntu_base0
63
63
  requirement: !ruby/object:Gem::Requirement
@@ -101,7 +101,7 @@ dependencies:
101
101
  version: '0.13'
102
102
  - - ">="
103
103
  - !ruby/object:Gem::Version
104
- version: 0.13.3
104
+ version: 0.13.4
105
105
  type: :runtime
106
106
  prerelease: false
107
107
  version_requirements: !ruby/object:Gem::Requirement
@@ -111,7 +111,7 @@ dependencies:
111
111
  version: '0.13'
112
112
  - - ">="
113
113
  - !ruby/object:Gem::Version
114
- version: 0.13.3
114
+ version: 0.13.4
115
115
  - !ruby/object:Gem::Dependency
116
116
  name: clipboard
117
117
  requirement: !ruby/object:Gem::Requirement
@@ -234,14 +234,14 @@ dependencies:
234
234
  requirements:
235
235
  - - "~>"
236
236
  - !ruby/object:Gem::Version
237
- version: 0.5.1
237
+ version: 0.8.1
238
238
  type: :development
239
239
  prerelease: false
240
240
  version_requirements: !ruby/object:Gem::Requirement
241
241
  requirements:
242
242
  - - "~>"
243
243
  - !ruby/object:Gem::Version
244
- version: 0.5.1
244
+ version: 0.8.1
245
245
  description:
246
246
  email:
247
247
  executables:
@@ -283,7 +283,9 @@ files:
283
283
  - lib/avm/tools/runner/instance/data/unit/clear.rb
284
284
  - lib/avm/tools/runner/instance/data/unit/dump.rb
285
285
  - lib/avm/tools/runner/instance/data/unit/load.rb
286
+ - lib/avm/tools/runner/instance/entry.rb
286
287
  - lib/avm/tools/runner/instance/info.rb
288
+ - lib/avm/tools/runner/instance/system.rb
287
289
  - lib/avm/tools/runner/launcher.rb
288
290
  - lib/avm/tools/runner/launcher/instances.rb
289
291
  - lib/avm/tools/runner/launcher/projects.rb
@@ -325,7 +327,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
325
327
  requirements:
326
328
  - - ">="
327
329
  - !ruby/object:Gem::Version
328
- version: '0'
330
+ version: 2.7.0
329
331
  required_rubygems_version: !ruby/object:Gem::Requirement
330
332
  requirements:
331
333
  - - ">="