sct 0.1.16 → 0.1.17

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: d056bb6dee0b4f63c1f1480dcf45fb72ddc7c56d438c22e198b516337226d10f
4
- data.tar.gz: 70e73a9e31b06b96f3e0c39cdc68e830e4eb155f6bf3656d8d8906244c4dbab2
3
+ metadata.gz: eb3124f71d7225fc1c88fb1385b1de8c308b3cb9dcd3621c57d82c681b90ea10
4
+ data.tar.gz: bdc089394ec064af60751b213a57f491752bb3184e6eacdc11d8367ed65d7658
5
5
  SHA512:
6
- metadata.gz: 19cc423a5d5e5e52aa63ed5f2c995c7b87f0c7e8802ede561ecc9326f438e6bc0e1be45e79c63adad37b1bd8db378518d9ec4491fc59b752a32f841991658b1a
7
- data.tar.gz: ca64a6c7ab008432005c5f6e53498de49fa3d608be78980963fd79fe4ec79940d0c4364418059dd78c05b7966fa8cdfa06934dea089eee6cc985fa42daae8a5a
6
+ metadata.gz: a8a45d11bc4c50a627a913a8a38cd602eadd4520c2064a14801b9c31bc5e3943f6cb0c2cf2487bc8e191096b81a9797f12790a73267e46758fb6403ea5c1cec3
7
+ data.tar.gz: 696c6ae0977971f48f9460113b11aca055a6687f884adb70606eab9d2d6822bfb37c33c8cc45bd66e8bc216b601b750fa24d45babef9a0e0c638bd32f8e17f31
@@ -1,4 +1,5 @@
1
1
  require 'sct/command_interface'
2
+ require 'terminal-table'
2
3
 
3
4
  module Sct
4
5
 
@@ -27,6 +28,8 @@ module Sct
27
28
  reset
28
29
  when "delete-stalled-pods"
29
30
  delete_stalled_pods(feedback: true)
31
+ when "status"
32
+ status
30
33
  else
31
34
  puts "Unknown or missing argument. Please run 'sct cluster up', 'sct cluster down', 'sct cluster setup', 'sct cluster reset', 'sct cluster update-config', or 'sct cluster delete-stalled-pods'.".red
32
35
  end
@@ -151,6 +154,61 @@ module Sct
151
154
  puts "Pods are now ready.".green
152
155
  end
153
156
 
157
+ def status
158
+ minikube_status
159
+ pods_status
160
+ system_pods
161
+ current_contexts
162
+ end
163
+
164
+ def pods_status
165
+ rows = []
166
+ pods.map do |pod|
167
+ status = pod[:status] == "Running" ? pod[:status].green : pod[:status].red
168
+ rows << [pod[:name], status]
169
+ end
170
+ puts Terminal::Table.new :title => "Pods Status".green, :headings => ['Name', 'Status'], :rows => rows
171
+ end
172
+
173
+ def system_pods
174
+ rows = []
175
+ pods("kube-system").map do |pod|
176
+ status = pod[:status] == "Running" ? pod[:status].green : pod[:status].red
177
+ rows << [pod[:name], status]
178
+ end
179
+ puts Terminal::Table.new :title => "System pods Status".green, :headings => ['Name', 'Status'], :rows => rows
180
+ end
181
+
182
+ def current_contexts
183
+ output = `kubectl config get-contexts`
184
+
185
+ lines = output.split "\n"
186
+ lines = lines[1..-1]
187
+
188
+ rows = []
189
+ lines.map do |line|
190
+ columns = line.split(" ")
191
+
192
+ current_context = columns[0] == "*" ? "Yes".green : "No".red
193
+ rows << [columns[2], current_context]
194
+ end
195
+ puts Terminal::Table.new :title => "Contexts".green, :headings => ['Cluster', 'Using context'], :rows => rows
196
+ end
197
+
198
+ def minikube_status
199
+ output = `#{minikube} status`
200
+
201
+ lines = output.split "\n"
202
+
203
+ rows = []
204
+ lines.map do |line|
205
+ columns = line.split(" ")
206
+
207
+ rows << [columns[0], columns[1]]
208
+ end
209
+ puts Terminal::Table.new :title => "Minikube Status".green, :headings => ['Name', 'Status'], :rows => rows
210
+ end
211
+
154
212
  def pods(namespace = nil)
155
213
  if namespace
156
214
  output = `kubectl get pods -n #{namespace}`
data/lib/sct/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sct
2
- VERSION = "0.1.16"
2
+ VERSION = "0.1.17"
3
3
  end
data/sct.gemspec CHANGED
@@ -32,6 +32,7 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency "colored", "~> 1.2"
33
33
  spec.add_dependency "commander", "~> 4.4.7"
34
34
  spec.add_dependency "highline", ">= 1.7.2"
35
+ spec.add_dependency "terminal-table", "~> 1.8"
35
36
 
36
37
  spec.add_development_dependency "bundler", "~> 2.0"
37
38
  spec.add_development_dependency "rake", "~> 10.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sct
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.16
4
+ version: 0.1.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Reshad Farid
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-17 00:00:00.000000000 Z
11
+ date: 2020-03-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: class_interface
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: 1.7.2
69
+ - !ruby/object:Gem::Dependency
70
+ name: terminal-table
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.8'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.8'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: bundler
71
85
  requirement: !ruby/object:Gem::Requirement