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 +4 -4
- data/lib/sct/commands/cluster.rb +58 -0
- data/lib/sct/version.rb +1 -1
- data/sct.gemspec +1 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eb3124f71d7225fc1c88fb1385b1de8c308b3cb9dcd3621c57d82c681b90ea10
|
4
|
+
data.tar.gz: bdc089394ec064af60751b213a57f491752bb3184e6eacdc11d8367ed65d7658
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a8a45d11bc4c50a627a913a8a38cd602eadd4520c2064a14801b9c31bc5e3943f6cb0c2cf2487bc8e191096b81a9797f12790a73267e46758fb6403ea5c1cec3
|
7
|
+
data.tar.gz: 696c6ae0977971f48f9460113b11aca055a6687f884adb70606eab9d2d6822bfb37c33c8cc45bd66e8bc216b601b750fa24d45babef9a0e0c638bd32f8e17f31
|
data/lib/sct/commands/cluster.rb
CHANGED
@@ -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
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.
|
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-
|
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
|