toolrack 0.14.0 → 0.16.2
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/.release_history.yml +4 -0
- data/Rakefile +1 -1
- data/lib/toolrack/cli_utils.rb +0 -2
- data/lib/toolrack/condition_utils.rb +27 -4
- data/lib/toolrack/data_conversion_utils.rb +12 -0
- data/lib/toolrack/null_output.rb +22 -0
- data/lib/toolrack/version.rb +1 -1
- data/lib/toolrack/version_utils.rb +47 -0
- data/lib/toolrack.rb +9 -0
- data/toolrack.gemspec +2 -1
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ab1dc47c48af6feb3a0aafffb05db94e72db915961c232e2c9574517cbd269fb
|
4
|
+
data.tar.gz: e584df8293bc3c1dea88ae07a1eadc4ff8b73d8593d4dd9c4d5cd7e5fa8813f1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5c14eedd41bc09df2493b047b6641631c4f0144ddcd35bb48c5c8bcea16dee906cabe7f623141be8fa2b93d19677ea392d0de4a2d1ca64e71d45d42a077da972
|
7
|
+
data.tar.gz: a5a0d2b72ef55a4111a77718416b773737630eaf488e0ddb640d1f3c6300ff75493e2e36b449c670c75ca491ba96e1c2ad6efd66331ce9f2c2f886090eb747d5
|
data/Rakefile
CHANGED
data/lib/toolrack/cli_utils.rb
CHANGED
@@ -10,11 +10,24 @@ module Antrapol
|
|
10
10
|
elsif obj.nil?
|
11
11
|
true
|
12
12
|
elsif obj.respond_to?(:empty?)
|
13
|
-
|
14
|
-
obj.strip
|
15
|
-
|
16
|
-
|
13
|
+
begin
|
14
|
+
if obj.respond_to?(:strip)
|
15
|
+
obj.strip.empty?
|
16
|
+
else
|
17
|
+
obj.empty?
|
18
|
+
end
|
19
|
+
rescue ArgumentError => ex
|
20
|
+
# strip sometimes trigger 'invalid byte sequence in UTF-8' error
|
21
|
+
# This will happen if the data is binary but the reading of the data
|
22
|
+
# is in ascii format.
|
23
|
+
if ex.message =~ /invalid byte sequence/
|
24
|
+
cuLogger.twarn :is_empty?, "Invalid byte sequence exception might indicates the data is expected in binary but was given a ASCII buffer to test. Please load the data in binary and test again"
|
25
|
+
false
|
26
|
+
else
|
27
|
+
raise
|
28
|
+
end
|
17
29
|
end
|
30
|
+
|
18
31
|
elsif obj.respond_to?(:length)
|
19
32
|
obj.length == 0
|
20
33
|
elsif obj.respond_to?(:size)
|
@@ -48,6 +61,16 @@ module Antrapol
|
|
48
61
|
end
|
49
62
|
alias_method :is_str_bool?, :is_string_boolean?
|
50
63
|
|
64
|
+
def cuLogger
|
65
|
+
if @cuLogger.nil?
|
66
|
+
@cuLogger = Tlogger.new
|
67
|
+
end
|
68
|
+
@cuLogger
|
69
|
+
end
|
70
|
+
|
71
|
+
#
|
72
|
+
# Make it available at class level too
|
73
|
+
#
|
51
74
|
def self.included(klass)
|
52
75
|
klass.class_eval <<-END
|
53
76
|
extend Antrapol::ToolRack::ConditionUtils
|
@@ -115,6 +115,18 @@ module Antrapol
|
|
115
115
|
alias_method :str_to_bool, :string_to_bool
|
116
116
|
alias_method :string_to_boolean, :string_to_bool
|
117
117
|
|
118
|
+
|
119
|
+
|
120
|
+
#
|
121
|
+
# Make it available at class level too
|
122
|
+
#
|
123
|
+
def self.included(klass)
|
124
|
+
klass.class_eval <<-END
|
125
|
+
extend Antrapol::ToolRack::DataConversionUtils
|
126
|
+
END
|
127
|
+
end
|
128
|
+
|
129
|
+
|
118
130
|
end
|
119
131
|
end
|
120
132
|
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
module Antrapol
|
4
|
+
module ToolRack
|
5
|
+
class NullOutput
|
6
|
+
|
7
|
+
def method_missing(mtd, *args, &block)
|
8
|
+
# sink-holed all methods call
|
9
|
+
logger.tdebug :nullOut, "#{mtd} / #{args} / #{block ? "with block" : "no block"}"
|
10
|
+
end
|
11
|
+
|
12
|
+
private
|
13
|
+
def logger
|
14
|
+
if @logger.nil?
|
15
|
+
@logger = Tlogger.new
|
16
|
+
end
|
17
|
+
@logger
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
data/lib/toolrack/version.rb
CHANGED
@@ -0,0 +1,47 @@
|
|
1
|
+
|
2
|
+
require_relative 'condition_utils'
|
3
|
+
|
4
|
+
module Antrapol
|
5
|
+
module ToolRack
|
6
|
+
module VersionUtils
|
7
|
+
include Antrapol::ToolRack::ConditionUtils
|
8
|
+
|
9
|
+
class VersionUtilsError < StandardError; end
|
10
|
+
|
11
|
+
def is_version_equal?(*args)
|
12
|
+
res = true
|
13
|
+
target = Gem::Version.new(args.first)
|
14
|
+
args.each do |a|
|
15
|
+
subj = Gem::Version.new(a)
|
16
|
+
res = (subj == target)
|
17
|
+
break if not res
|
18
|
+
target = subj
|
19
|
+
end
|
20
|
+
|
21
|
+
res
|
22
|
+
end
|
23
|
+
|
24
|
+
def possible_versions(ver)
|
25
|
+
raise VersionUtilsError, "Given version to extrapolate is empty" if is_empty?(ver)
|
26
|
+
vv = ver.to_s.split('.')
|
27
|
+
tv = vv.clone
|
28
|
+
res = []
|
29
|
+
cnt = 0
|
30
|
+
(0...vv.length).each do |i|
|
31
|
+
tv = vv.clone
|
32
|
+
tv[i] = tv[i].to_i+1
|
33
|
+
|
34
|
+
j = i
|
35
|
+
loop do
|
36
|
+
break if j >= (vv.length-1)
|
37
|
+
j += 1
|
38
|
+
tv[j] = 0
|
39
|
+
end
|
40
|
+
res << tv.join(".")
|
41
|
+
end
|
42
|
+
res
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
data/lib/toolrack.rb
CHANGED
@@ -14,6 +14,8 @@ require_relative 'toolrack/data_conversion_utils'
|
|
14
14
|
require_relative 'toolrack/password_utils'
|
15
15
|
require_relative 'toolrack/hash_config'
|
16
16
|
require_relative 'toolrack/cli_utils'
|
17
|
+
require_relative 'toolrack/null_output'
|
18
|
+
require_relative 'toolrack/version_utils'
|
17
19
|
|
18
20
|
module Antrapol
|
19
21
|
module ToolRack
|
@@ -37,6 +39,8 @@ TR::DataConvUtils = ToolRack::DataConvUtils
|
|
37
39
|
ToolRack::CondUtils = ToolRack::ConditionUtils
|
38
40
|
TR::CondUtils = ToolRack::ConditionUtils
|
39
41
|
|
42
|
+
TR::ProcessUtils = ToolRack::ProcessUtils
|
43
|
+
|
40
44
|
ToolRack::PassUtils = ToolRack::PasswordUtils
|
41
45
|
TR::PassUtils = ToolRack::PasswordUtils
|
42
46
|
|
@@ -50,3 +54,8 @@ TR::HashConfig = ToolRack::HashConfig
|
|
50
54
|
|
51
55
|
TR::CliUtils = ToolRack::CliUtils
|
52
56
|
|
57
|
+
TR::NullOut = ToolRack::NullOutput
|
58
|
+
|
59
|
+
TR::VerUtils = ToolRack::VersionUtils
|
60
|
+
TR::VUtils = TR::VerUtils
|
61
|
+
|
data/toolrack.gemspec
CHANGED
@@ -29,6 +29,7 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_dependency "tlogger" #, "~> 0.21"
|
30
30
|
spec.add_dependency "base58"
|
31
31
|
|
32
|
-
spec.add_development_dependency "devops_helper" #, "~> 0.1.0"
|
32
|
+
#spec.add_development_dependency "devops_helper" #, "~> 0.1.0"
|
33
|
+
spec.add_development_dependency "devops_assist"
|
33
34
|
spec.add_development_dependency "rspec"
|
34
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: toolrack
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.16.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tlogger
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: devops_assist
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
@@ -74,6 +74,7 @@ extensions: []
|
|
74
74
|
extra_rdoc_files: []
|
75
75
|
files:
|
76
76
|
- ".gitignore"
|
77
|
+
- ".release_history.yml"
|
77
78
|
- ".rspec"
|
78
79
|
- ".travis.yml"
|
79
80
|
- CODE_OF_CONDUCT.md
|
@@ -89,11 +90,13 @@ files:
|
|
89
90
|
- lib/toolrack/exception_utils.rb
|
90
91
|
- lib/toolrack/global.rb
|
91
92
|
- lib/toolrack/hash_config.rb
|
93
|
+
- lib/toolrack/null_output.rb
|
92
94
|
- lib/toolrack/password_utils.rb
|
93
95
|
- lib/toolrack/process_utils.rb
|
94
96
|
- lib/toolrack/runtime_utils.rb
|
95
97
|
- lib/toolrack/utils.rb
|
96
98
|
- lib/toolrack/version.rb
|
99
|
+
- lib/toolrack/version_utils.rb
|
97
100
|
- process_test/backtick_test.rb
|
98
101
|
- process_test/pty_test.rb
|
99
102
|
- process_test/shell_test.rb
|