kubernetes-client 0.0.1 → 0.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d9626576119f060206d829e6eeb84e5e3a78297b242c3fd089ea42907921de87
4
- data.tar.gz: ce0d5d8e997009a6ae89bd93fc7b580a16e16216cb4ada9d576de73a575f22d6
3
+ metadata.gz: edc39300ce21bec6b01dee4bd28c21dcefa3502125ec7a49e8c7cb3a9841853f
4
+ data.tar.gz: 65090aeebe9aa6632d38121182c2cc1357806c5a5566e23a1c041d317a8e4d45
5
5
  SHA512:
6
- metadata.gz: 0267b7bf5dd27c06c1cf63c63b99fd4fda1b5fc1247e8502a1c7fc4a0bedd80d045460116b7ebe57f074f6233e6ca7db251612555e49178f2a3f2ef1e9830758
7
- data.tar.gz: 974445a09a37f7e12bfe660cc4d62d6c664b6ed6581756abae27f92ecbcb1065f1a0dfca07f70f44602dbb65197cf33adb555a0b1b3cf9657dd892079c1e3577
6
+ metadata.gz: 5d105e79dfe008557f5918f1aef1fb3c257dae959083c3fe8ee10b8c56f0043d64531514cb94a9d86311a7a7ca75881c97147bf752a0835a5318b1b1ca0cc815
7
+ data.tar.gz: 3beb5cd59a4aad8ddfb261164d95585f2931c48608c1c4d608dfc9a2fc6883a5053ce5c574c5d9175c4b9018404e5dd1e4d6f2cf2ec7ad73dc9774eab78bc96b
@@ -1,12 +1,6 @@
1
1
  require 'rest-client'
2
2
  require 'json'
3
3
 
4
- class Hash
5
- def method_missing(m, *args, &block)
6
- self[m.to_sym]
7
- end
8
- end
9
-
10
4
  module Kubernetes
11
5
  class Client
12
6
 
@@ -30,7 +24,6 @@ module Kubernetes
30
24
  password: nil,
31
25
  token: nil,
32
26
  namespace: nil,
33
- symbolize: true,
34
27
  discovery: true
35
28
  }
36
29
  @options.merge!(options)
@@ -53,18 +46,6 @@ module Kubernetes
53
46
  end
54
47
 
55
48
  def formatter(s)
56
- def symbolize(obj)
57
- return obj.reduce({}) do |memo, (k, v)|
58
- memo.tap { |m| m[k.to_sym] = symbolize(v) }
59
- end if obj.is_a? Hash
60
-
61
- return obj.reduce([]) do |memo, v|
62
- memo << symbolize(v); memo
63
- end if obj.is_a? Array
64
-
65
- obj
66
- end
67
- return symbolize(JSON.load(s)) if @options[:symbolize] == true
68
49
  return JSON.load(s)
69
50
  end
70
51
 
@@ -145,7 +126,7 @@ module Kubernetes
145
126
 
146
127
  uri = URI(@options[:url])
147
128
  cachefile = File.join(File.expand_path('~'),".kubernetes-client.#{uri.host}.#{uri.port}.cache")
148
- if File.readable?(cachefile)
129
+ if File.readable?(cachefile) && ( nocache == false )
149
130
  @apis, @resources = JSON.load(File.read(cachefile))
150
131
  @resources.each do |name, value|
151
132
  @resources[name] = {
@@ -157,28 +138,28 @@ module Kubernetes
157
138
  end
158
139
 
159
140
  # Load api versions
160
- formatter(@rest_client['/api'].get.body).versions.each do |version|
141
+ formatter(@rest_client['/api'].get.body)['versions'].each do |version|
161
142
  @apis << "/api/#{version}"
162
143
  end
163
144
 
164
145
  # Load apis versions
165
- formatter(@rest_client['/apis'].get.body).groups.each do |group|
166
- @apis << "/apis/#{group.preferredVersion.groupVersion}"
146
+ formatter(@rest_client['/apis'].get.body)['groups'].each do |group|
147
+ @apis << "/apis/#{group['preferredVersion']['groupVersion']}"
167
148
  end
168
149
 
169
150
  # Load Resources
170
151
  @apis.each do |api|
171
- formatter(@rest_client[api].get.body).resources.each do |resource|
172
- @resources[resource[:name]] = { api: api, name: resource[:name] }
173
- @resources[resource[:kind]] = { api: api, name: resource[:name] }
174
- @resources[resource[:singularName]] = { api: api, name: resource[:name] } \
175
- unless resource.singularName.empty?
176
- @resources[resource[:singularName].to_s.downcase] = \
177
- { api: api, name: resource[:name] } \
178
- unless resource.singularName.empty?
179
- if resource[:shortNames]
180
- resource[:shortNames].each do |shortname|
181
- @resources[shortname] = { api: api, name: resource[:name] }
152
+ formatter(@rest_client[api].get.body)['resources'].each do |resource|
153
+ @resources[resource['name']] = { api: api, name: resource['name'] }
154
+ @resources[resource['kind']] = { api: api, name: resource['name'] }
155
+ @resources[resource['singularName']] = { api: api, name: resource['name'] } \
156
+ unless resource['singularName'].nil?
157
+ @resources[resource['singularName'].to_s.downcase] = \
158
+ { api: api, name: resource['name'] } \
159
+ unless resource['singularName'].nil?
160
+ if resource['shortNames']
161
+ resource['shortNames'].each do |shortname|
162
+ @resources[shortname] = { api: api, name: resource['name'] }
182
163
  end
183
164
  end
184
165
  end
@@ -1,5 +1,5 @@
1
1
  module Kubernetes
2
2
  class Client
3
- VERSION = '0.0.1'
3
+ VERSION = '0.0.2'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kubernetes-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sascha Spreitzer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-28 00:00:00.000000000 Z
11
+ date: 2019-05-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client