toolrack 0.21.0 → 0.22.1

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: 29c4c2d083df087ab7bba41d05ba5beac17d45087497d236f30c0b90c53a9ea8
4
- data.tar.gz: d308ae597d8e5a8bdbcb9308576683fbd1814bc64ae0898a273c2b7587e72692
3
+ metadata.gz: 2bf5660073953ff0e581655963232f58762e39d46ccd1383885958da071d76e6
4
+ data.tar.gz: 6f94d5fe9de1c054d386639e192a60a0d075c34daf46c477936a4fccb7c52a56
5
5
  SHA512:
6
- metadata.gz: 4bfa1d16e9d560be45162a6bc432b5de2389c055eb8bd27065989858b8e7425e9ffe5cfa2a5bbc7b34d56b069d3bde04cc7dc3c2d6bc0afdacb030abb7345395
7
- data.tar.gz: 8d104b705be9921cc63f8c617b3caa3f6f37b1567d1ea608cd176f9a6d8ae54e6a03fa824047894774eb66c7d8b98f504ee9d95ee8b285f185787e2de96c207b
6
+ metadata.gz: f218994963cbdf44dc154b02ebdf4fa011c0f4f2819ab96143d8e14e383aa8688cf775a3db67896110020157253a33ee419e56a6be2649e76c169813af3ce1c4
7
+ data.tar.gz: 6acabb8fd0426fde3acaa42b3e1f55c27402480e6dad210ee21ff0f5a9426e07a377b23aeb005da851788a6bec7a1eb057253947d4db2dec76df3121d58c8896
data/.release_history.yml CHANGED
@@ -28,3 +28,7 @@ toolrack:
28
28
  :timestamp: 1679498219.4181716
29
29
  - :version: 0.20.2
30
30
  :timestamp: 1679815976.724487
31
+ - :version: 0.21.0
32
+ :timestamp: 1680235248.152352
33
+ - :version: 0.22.0
34
+ :timestamp: 1680773287.074721
data/Gemfile.lock CHANGED
@@ -1,11 +1,12 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- toolrack (0.21.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
@@ -10,3 +10,4 @@ Rake::TestTask.new(:test) do |t|
10
10
  end
11
11
 
12
12
  task :default => :test
13
+ require 'release/gem'
@@ -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
@@ -1,6 +1,6 @@
1
1
  module Antrapol
2
2
  module ToolRack
3
- VERSION = "0.21.0"
3
+ VERSION = "0.22.1"
4
4
  end
5
5
  end
6
6
 
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
@@ -32,4 +32,6 @@ Gem::Specification.new do |spec|
32
32
  #spec.add_development_dependency "devops_helper" #, "~> 0.1.0"
33
33
  spec.add_development_dependency "devops_assist"
34
34
  spec.add_development_dependency "rspec"
35
+ spec.add_development_dependency "release-gem"
36
+
35
37
  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.21.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-03-31 00:00:00.000000000 Z
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