toolrack 0.21.0 → 0.22.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.release_history.yml +4 -0
- data/Gemfile.lock +13 -1
- data/Rakefile +1 -0
- data/lib/toolrack/terminal_utils.rb +70 -0
- data/lib/toolrack/version.rb +1 -1
- data/lib/toolrack.rb +3 -0
- data/toolrack.gemspec +2 -0
- metadata +17 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2bf5660073953ff0e581655963232f58762e39d46ccd1383885958da071d76e6
|
4
|
+
data.tar.gz: 6f94d5fe9de1c054d386639e192a60a0d075c34daf46c477936a4fccb7c52a56
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f218994963cbdf44dc154b02ebdf4fa011c0f4f2819ab96143d8e14e383aa8688cf775a3db67896110020157253a33ee419e56a6be2649e76c169813af3ce1c4
|
7
|
+
data.tar.gz: 6acabb8fd0426fde3acaa42b3e1f55c27402480e6dad210ee21ff0f5a9426e07a377b23aeb005da851788a6bec7a1eb057253947d4db2dec76df3121d58c8896
|
data/.release_history.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
toolrack (0.
|
4
|
+
toolrack (0.22.1)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
+
colorize (0.8.1)
|
9
10
|
devops_assist (0.3.11)
|
10
11
|
git_cli
|
11
12
|
git_cli_prompt (~> 0.3.3)
|
@@ -29,6 +30,14 @@ GEM
|
|
29
30
|
tty-color (~> 0.5)
|
30
31
|
ptools (1.4.3)
|
31
32
|
rake (12.3.3)
|
33
|
+
release-gem (0.1.12)
|
34
|
+
colorize
|
35
|
+
git_cli
|
36
|
+
gvcs
|
37
|
+
teLogger
|
38
|
+
toolrack
|
39
|
+
tty-command
|
40
|
+
tty-prompt
|
32
41
|
rspec (3.12.0)
|
33
42
|
rspec-core (~> 3.12.0)
|
34
43
|
rspec-expectations (~> 3.12.0)
|
@@ -44,6 +53,8 @@ GEM
|
|
44
53
|
rspec-support (3.12.0)
|
45
54
|
teLogger (0.2.2)
|
46
55
|
tty-color (0.6.0)
|
56
|
+
tty-command (0.10.1)
|
57
|
+
pastel (~> 0.8)
|
47
58
|
tty-cursor (0.7.1)
|
48
59
|
tty-prompt (0.23.1)
|
49
60
|
pastel (~> 0.8)
|
@@ -62,6 +73,7 @@ DEPENDENCIES
|
|
62
73
|
devops_assist
|
63
74
|
minitest (~> 5.0)
|
64
75
|
rake (~> 12.0)
|
76
|
+
release-gem
|
65
77
|
rspec
|
66
78
|
toolrack!
|
67
79
|
|
data/Rakefile
CHANGED
@@ -0,0 +1,70 @@
|
|
1
|
+
|
2
|
+
require_relative 'runtime_utils'
|
3
|
+
|
4
|
+
module Antrapol
|
5
|
+
module ToolRack
|
6
|
+
|
7
|
+
class TerminalUtilsException < StandardError; end
|
8
|
+
|
9
|
+
module TerminalUtils
|
10
|
+
|
11
|
+
def tu_new_terminal(terminal, cmd)
|
12
|
+
|
13
|
+
cmd = [cmd] if not cmd.is_a?(Array)
|
14
|
+
|
15
|
+
case terminal
|
16
|
+
when "terminator"
|
17
|
+
`#{terminal} -x "#{cmd.join(" ")}"`
|
18
|
+
|
19
|
+
when "gnome-terminal"
|
20
|
+
`#{terminal} -- bash -c "#{cmd.join(" ")}; exec bash"`
|
21
|
+
|
22
|
+
when "iTerm2"
|
23
|
+
`osascript -e \
|
24
|
+
'tell application "iTerm"
|
25
|
+
activate
|
26
|
+
|
27
|
+
create window with default profile
|
28
|
+
delay 0.5
|
29
|
+
|
30
|
+
set currentWindow to current window
|
31
|
+
|
32
|
+
tell current session of currentWindow
|
33
|
+
write text "#{cmd.join(" ")}"
|
34
|
+
end tell
|
35
|
+
|
36
|
+
end tell'
|
37
|
+
`
|
38
|
+
when "Terminal"
|
39
|
+
`osascript -e \
|
40
|
+
'tell application "Terminal"
|
41
|
+
activate
|
42
|
+
do script "#{cmd.join(" ")}"
|
43
|
+
end tell'
|
44
|
+
`
|
45
|
+
|
46
|
+
else
|
47
|
+
raise TerminalUtilsException, "Terminal '#{terminal}' not supported. Supported terminal are : #{tu.possible_terminal.join(", ")}"
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
|
52
|
+
def tu_possible_terminal
|
53
|
+
avail = []
|
54
|
+
if RuntimeUtils.on_linux?
|
55
|
+
possible = [ "gnome-terminal","konsole","tilix", "terminator" ]
|
56
|
+
possible.each do |app|
|
57
|
+
avail << app if not File.which(app).nil?
|
58
|
+
end
|
59
|
+
elsif RuntimeUtils.on_windows?
|
60
|
+
avail << "cmd.exe"
|
61
|
+
elsif RuntimeUtils.on_mac?
|
62
|
+
avail << "Terminal"
|
63
|
+
avail << "iTerm2"
|
64
|
+
end
|
65
|
+
avail
|
66
|
+
end # tu_possible_terminal
|
67
|
+
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
data/lib/toolrack/version.rb
CHANGED
data/lib/toolrack.rb
CHANGED
@@ -18,6 +18,7 @@ require_relative 'toolrack/null_output'
|
|
18
18
|
require_relative 'toolrack/version_utils'
|
19
19
|
require_relative 'toolrack/file_utils'
|
20
20
|
require_relative 'toolrack/block_params_utils'
|
21
|
+
require_relative 'toolrack/terminal_utils'
|
21
22
|
|
22
23
|
module Antrapol
|
23
24
|
module ToolRack
|
@@ -65,3 +66,5 @@ TR::FileUtils = ToolRack::FileUtils
|
|
65
66
|
|
66
67
|
TR::BlockParamsUtils = ToolRack::BlockParamsUtils
|
67
68
|
|
69
|
+
TR::TerminalUtils = ToolRack::TerminalUtils
|
70
|
+
|
data/toolrack.gemspec
CHANGED
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.22.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: devops_assist
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: release-gem
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
description: Just collections of utilities
|
42
56
|
email:
|
43
57
|
- chrisliaw@antrapol.com
|
@@ -70,6 +84,7 @@ files:
|
|
70
84
|
- lib/toolrack/password_utils.rb
|
71
85
|
- lib/toolrack/process_utils.rb
|
72
86
|
- lib/toolrack/runtime_utils.rb
|
87
|
+
- lib/toolrack/terminal_utils.rb
|
73
88
|
- lib/toolrack/utils.rb
|
74
89
|
- lib/toolrack/version.rb
|
75
90
|
- lib/toolrack/version_utils.rb
|