avm-tools 0.149.0 → 0.150.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: 4b9d3ec974736d535de064589ef2af6f4fae2b149e043675200df92b851eea30
4
- data.tar.gz: 8da5ec56f8c81c6cdaa403534c33d88586c64eda07e7a706674ffc650f27908f
3
+ metadata.gz: 1bab59c8dee4bea0f37e1c0d6e9d5cebff9b299aa8f0381ea9e64c47e3404b80
4
+ data.tar.gz: 5479c8cfa3d9da70d5359ca226eb051f7854b30bdb68de2ac3579b6eb95b5f54
5
5
  SHA512:
6
- metadata.gz: 45591b92498af434eaae3eb096134b6d8952593fdaeffea04d143e76a534593ad689ce15f2c2f39164f2b625696749aabfb6992c648444631a345fdb3fd00f9f
7
- data.tar.gz: 91962893c6add83e548ad9a02bd9c2ef69a759eb6e8d1f002483f44afeff041f35968957c9a2c44b33a7274e416f7c7c53c45e78bef215bc2234783ae6a9fff3
6
+ metadata.gz: ed6c7a23f72685841427cbd84fe08cac9b92e42d3c4f5bee6794c05d2680a1cdbfbb3e24d9d92ab93524a07e88e46f121dc1b41f8b0f9147a885a82f616a1f3c
7
+ data.tar.gz: d45232d1d1ac68ea6f1080ee6a73a22c908ed8c9f530ac0ec2d5a5a0261b6e277080d25a8eb844ef1e1596865a6a522756b7ba7c3c009a5e0b6bf0f9bf79675c
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'avm/data/package/dump'
4
3
  require 'avm/instances/runner'
5
4
  require 'eac_cli/core_ext'
6
5
 
@@ -10,53 +9,8 @@ module Avm
10
9
  class Instance < ::Avm::Instances::Runner
11
10
  class Data
12
11
  class Dump
13
- DUMP_EXPIRE_TIME = 1.day
14
- NO_DUMP_MESSAGE = 'Dump "%s" already exist and rewrite options was no setted nor ' \
15
- 'dump was expired.'
16
-
17
- runner_with :help do
18
- desc 'Dump utility for EacRailsBase instance.'
19
- bool_opt '-w', '--rewrite', 'Forces dump overwrite.'
20
- pos_arg :dump_path, optional: true
21
- end
22
-
23
- # @return [String]
24
- def help_extra_text
25
- "Default dump path: \"#{default_dump_path}\""
26
- end
27
-
28
- def run
29
- infov 'Instance to dump', "#{instance} (#{instance.class})"
30
- if package_dump.runnable?
31
- package_dump.run
32
- else
33
- warn(package_dump.cannot_run_reason)
34
- end
35
- success("Dump path: \"#{dump_path}\"")
36
- dump_path
37
- end
38
-
39
- private
40
-
41
- def package_dump_uncached
42
- instance
43
- .data_package.dump(dump_path, existing: package_dump_existing)
44
- end
45
-
46
- def dump_path
47
- parsed.dump_path || default_dump_path
48
- end
49
-
50
- def default_dump_path
51
- instance.data_default_dump_path
52
- end
53
-
54
- def package_dump_existing
55
- if parsed.rewrite?
56
- ::Avm::Data::Package::Dump::EXISTING_ROTATE
57
- else
58
- ::Avm::Data::Package::Dump::EXISTING_ROTATE_EXPIRED
59
- end
12
+ runner_with :help, :include_exclude, :instance_data_dump do
13
+ desc 'Dump utility for instance.'
60
14
  end
61
15
  end
62
16
  end
@@ -10,28 +10,7 @@ module Avm
10
10
  class Data
11
11
  class Unit
12
12
  class Dump
13
- runner_with :help do
14
- pos_arg :dump_path, optional: true
15
- end
16
-
17
- def run
18
- data_owner.dump(dump_path)
19
- end
20
-
21
- # @return [String]
22
- def help_extra_text
23
- "Default dump path: \"#{default_dump_path}\""
24
- end
25
-
26
- # @return [Pathname]
27
- def dump_path
28
- (parsed.dump_path || default_dump_path).to_pathname
29
- end
30
-
31
- # @return [String]
32
- def default_dump_path
33
- data_owner.data_default_dump_path
34
- end
13
+ runner_with :help, :instance_data_dump
35
14
  end
36
15
  end
37
16
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'avm/data/clearer'
4
4
  require 'eac_cli/core_ext'
5
- require 'eac_cli/runner'
5
+ require 'avm/tools/runner_with/instance_data_performer'
6
6
 
7
7
  module Avm
8
8
  module Tools
@@ -10,19 +10,12 @@ module Avm
10
10
  module InstanceDataClear
11
11
  common_concern do
12
12
  enable_simple_cache
13
- include ::EacCli::Runner
13
+ include ::Avm::Tools::RunnerWith::InstanceDataPerformer
14
14
  end
15
15
 
16
- def run
17
- performer.perform
18
- end
19
-
20
- private
21
-
22
- def performer_uncached
23
- %i[include exclude].inject(::Avm::Data::Clearer.new(data_owner)) do |a1, e1|
24
- if_respond(e1, []).inject(a1) { |a2, e2| a2.send(e1, e2) }
25
- end
16
+ # @return [Class]
17
+ def data_performer_class
18
+ ::Avm::Data::Clearer
26
19
  end
27
20
  end
28
21
  end
@@ -0,0 +1,66 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/data/dumper'
4
+ require 'eac_cli/core_ext'
5
+ require 'avm/tools/runner_with/instance_data_performer'
6
+
7
+ module Avm
8
+ module Tools
9
+ module RunnerWith
10
+ module InstanceDataDump
11
+ common_concern do
12
+ enable_simple_cache
13
+ include ::Avm::Tools::RunnerWith::InstanceDataPerformer
14
+
15
+ runner_definition do
16
+ bool_opt '-w', '--rewrite', 'Forces dump overwrite.'
17
+ pos_arg :dump_path, optional: true
18
+ end
19
+
20
+ set_callback :run, :after do
21
+ success("Dump path: \"#{dump_path}\"")
22
+ dump_path
23
+ end
24
+ end
25
+
26
+ DUMP_EXPIRE_TIME = 1.day
27
+ NO_DUMP_MESSAGE = 'Dump "%s" already exist and rewrite options was no setted nor ' \
28
+ 'dump was expired.'
29
+
30
+ # @return [Class]
31
+ def data_performer_class
32
+ ::Avm::Data::Dumper
33
+ end
34
+
35
+ # @return [String]
36
+ def help_extra_text
37
+ "Default dump path: \"#{default_dump_path}\""
38
+ end
39
+
40
+ private
41
+
42
+ # @return [Avm::Data::Dumper]
43
+ def data_performer_uncached
44
+ super.existing(dump_existing)
45
+ end
46
+
47
+ # @return [Pathname]
48
+ def dump_path
49
+ (parsed.dump_path || default_dump_path).to_pathname
50
+ end
51
+
52
+ def default_dump_path
53
+ data_performer.default_dump_path
54
+ end
55
+
56
+ def dump_existing
57
+ if parsed.rewrite?
58
+ ::Avm::Data::Package::Dump::EXISTING_ROTATE
59
+ else
60
+ ::Avm::Data::Package::Dump::EXISTING_ROTATE_EXPIRED
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_cli/core_ext'
4
+ require 'eac_cli/runner'
5
+
6
+ module Avm
7
+ module Tools
8
+ module RunnerWith
9
+ module InstanceDataPerformer
10
+ acts_as_abstract :data_performer_class
11
+ common_concern do
12
+ enable_simple_cache
13
+ include ::EacCli::Runner
14
+ end
15
+
16
+ def run
17
+ if data_performer.performable?
18
+ data_performer.perform
19
+ else
20
+ warn("Cannot perform: #{data_performer.cannot_perform_reason}")
21
+ end
22
+ end
23
+
24
+ private
25
+
26
+ # @return [Avm::Data::Performer]
27
+ def data_performer_uncached
28
+ %i[include exclude].inject(data_performer_class.new(data_owner)) do |a1, e1|
29
+ if_respond(e1, []).inject(a1) { |a2, e2| a2.send(e1, e2) }
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module Tools
5
- VERSION = '0.149.0'
5
+ VERSION = '0.150.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.149.0
4
+ version: 0.150.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-05-20 00:00:00.000000000 Z
11
+ date: 2023-05-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha-parsers
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.73'
33
+ version: '0.74'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.73'
40
+ version: '0.74'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: avm-eac_ruby_base1
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -67,7 +67,7 @@ dependencies:
67
67
  version: '0.4'
68
68
  - - ">="
69
69
  - !ruby/object:Gem::Version
70
- version: 0.4.2
70
+ version: 0.4.3
71
71
  type: :runtime
72
72
  prerelease: false
73
73
  version_requirements: !ruby/object:Gem::Requirement
@@ -77,7 +77,7 @@ dependencies:
77
77
  version: '0.4'
78
78
  - - ">="
79
79
  - !ruby/object:Gem::Version
80
- version: 0.4.2
80
+ version: 0.4.3
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: avm-files
83
83
  requirement: !ruby/object:Gem::Requirement
@@ -107,7 +107,7 @@ dependencies:
107
107
  version: '0.13'
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: 0.13.2
110
+ version: 0.13.3
111
111
  type: :runtime
112
112
  prerelease: false
113
113
  version_requirements: !ruby/object:Gem::Requirement
@@ -117,7 +117,7 @@ dependencies:
117
117
  version: '0.13'
118
118
  - - ">="
119
119
  - !ruby/object:Gem::Version
120
- version: 0.13.2
120
+ version: 0.13.3
121
121
  - !ruby/object:Gem::Dependency
122
122
  name: clipboard
123
123
  requirement: !ruby/object:Gem::Requirement
@@ -311,6 +311,8 @@ files:
311
311
  - lib/avm/tools/runner_with.rb
312
312
  - lib/avm/tools/runner_with/include_exclude.rb
313
313
  - lib/avm/tools/runner_with/instance_data_clear.rb
314
+ - lib/avm/tools/runner_with/instance_data_dump.rb
315
+ - lib/avm/tools/runner_with/instance_data_performer.rb
314
316
  - lib/avm/tools/self.rb
315
317
  - lib/avm/tools/version.rb
316
318
  - template/avm/self/docker_image/Dockerfile