canzea 0.1.86 → 0.1.87
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/canzea/registry.rb +12 -0
- data/lib/canzea/version.rb +1 -1
- data/lib/commands/add-env.rb +2 -2
- data/lib/registry.rb +76 -107
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 54c0691d0071ef0e17bf27045007e005eec6cc6a
|
4
|
+
data.tar.gz: ac65626722a0b78785fa39866c1529ac366507a8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 77e69e7d911428e9364173855c47510d38310b682f251f5d3605a895a166b3ae54778adc70e66a7b9b0120c87ad05b746a50a4dfc7d6b79acc6962b8346984e0
|
7
|
+
data.tar.gz: 228621af63f61b2553f8c704958738b4292d03e997f6b38272b3ec7700a5b98f9a1a3447f270e7d6528d5bad132de968f05db6e0d28f20a821c25eaa0f312196
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'json'
|
2
|
+
require_relative 'config'
|
3
|
+
require_relative '../registry'
|
4
|
+
|
5
|
+
module Canzea
|
6
|
+
|
7
|
+
extraConfig = Canzea::config[:config_location] + "/config.json"
|
8
|
+
if File.exists?(extraConfig)
|
9
|
+
file = File.read(extraConfig)
|
10
|
+
Canzea::configure JSON.parse(file)
|
11
|
+
end
|
12
|
+
end
|
data/lib/canzea/version.rb
CHANGED
data/lib/commands/add-env.rb
CHANGED
@@ -41,13 +41,13 @@ class AddEnv
|
|
41
41
|
envs = JSON.parse(file)
|
42
42
|
envs['vars'].keys.each { | key |
|
43
43
|
val = envs['vars'][key]
|
44
|
-
puts "--
|
44
|
+
puts "-- #{key} == #{val}"
|
45
45
|
@log.info "Setting: #{key} == #{val}"
|
46
46
|
ENV.store(key, val)
|
47
47
|
}
|
48
48
|
envs['secrets'].keys.each { | key |
|
49
49
|
val = envs['secrets'][key]
|
50
|
-
puts "--
|
50
|
+
puts "-- #{key} == XXXXXX"
|
51
51
|
@log.info "Setting: #{key} == XXXXXXX"
|
52
52
|
ENV.store(key, val)
|
53
53
|
}
|
data/lib/registry.rb
CHANGED
@@ -5,152 +5,121 @@ require 'base64'
|
|
5
5
|
require 'openssl'
|
6
6
|
|
7
7
|
class Registry
|
8
|
-
def
|
9
|
-
|
10
|
-
|
11
|
-
http = Net::HTTP.new(uri.host, uri.port)
|
12
|
-
|
13
|
-
if (Canzea::config[:consul_tls])
|
14
|
-
pemCert = File.read(Canzea::config[:consul_tls_cert_file])
|
15
|
-
pemKey = File.read(Canzea::config[:consul_tls_key_file])
|
16
|
-
|
17
|
-
http.use_ssl = true
|
18
|
-
http.ca_file = Canzea::config[:consul_tls_ca_file]
|
19
|
-
http.cert = OpenSSL::X509::Certificate.new(pemCert)
|
20
|
-
http.key = OpenSSL::PKey::RSA.new(pemKey)
|
21
|
-
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
22
|
-
# http.set_debug_output($stdout)
|
23
|
-
http.ssl_version = :SSLv23
|
24
|
-
end
|
25
|
-
request = Net::HTTP::Get.new(uri.request_uri)
|
26
|
-
resp = http.request(request)
|
27
|
-
|
28
|
-
if Integer(resp.code) != 200
|
29
|
-
puts "-- KEY VALUE NOT FOUND! " + key
|
30
|
-
abort("Problem reading registry, response code #{resp.code}")
|
31
|
-
end
|
8
|
+
def getKeyValues (root)
|
9
|
+
uri = URI.parse(ENV["CONSUL_URL"] + "/v1/kv/#{root}?recurse=true")
|
10
|
+
http = prepareHttp(uri)
|
32
11
|
|
33
|
-
|
34
|
-
|
35
|
-
end
|
12
|
+
request = Net::HTTP::Get.new(uri.request_uri)
|
13
|
+
resp = http.request(request)
|
36
14
|
|
37
|
-
|
15
|
+
res = http.get("/v1/kv/#{key}?recurse=true", headers)
|
38
16
|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
51
|
-
# http.set_debug_output($stdout)
|
52
|
-
http.ssl_version = :SSLv23
|
53
|
-
end
|
54
|
-
request = Net::HTTP::Put.new(uri.request_uri)
|
55
|
-
request.body = "#{value}";
|
56
|
-
resp = http.request(request)
|
57
|
-
|
58
|
-
if Integer(resp.code) != 200
|
59
|
-
puts "-- KEY VALUE NOT SAVED! #{root} #{key}"
|
60
|
-
abort("Problem adding to registry, response code #{resp.code}")
|
61
|
-
end
|
17
|
+
if ( Integer(res.code) != 200 )
|
18
|
+
puts "-- KEY VALUE NOT FOUND! " + root
|
19
|
+
abort("Problem reading registry, response code #{resp.code}")
|
20
|
+
else
|
21
|
+
response = []
|
22
|
+
result = JSON.parse(res.body)
|
23
|
+
result.each() do |item|
|
24
|
+
response.push({item["Key"] => Base64.decode64(item["Value"])})
|
25
|
+
end
|
26
|
+
return JSON.generate(response)
|
27
|
+
end
|
62
28
|
end
|
63
29
|
|
64
|
-
def
|
65
|
-
|
66
|
-
sess = Patron::Session.new do |patron|
|
67
|
-
patron.timeout = 10
|
68
|
-
patron.base_url = ENV["CONSUL_URL"] + '/v1/kv'
|
69
|
-
# patron.headers = {'User-Agent' => 'IKE-Registry/1.0'}
|
70
|
-
end
|
30
|
+
def getKeyValue (key)
|
71
31
|
|
72
|
-
|
73
|
-
|
32
|
+
uri = URI.parse(ENV["CONSUL_URL"] + "/v1/kv/#{key}")
|
33
|
+
http = prepareHttp(uri)
|
74
34
|
|
75
|
-
|
35
|
+
request = Net::HTTP::Get.new(uri.request_uri)
|
36
|
+
resp = http.request(request)
|
76
37
|
|
77
|
-
if resp.
|
78
|
-
|
38
|
+
if Integer(resp.code) != 200
|
39
|
+
puts "-- KEY VALUE NOT FOUND! " + key
|
40
|
+
abort("Problem reading registry, response code #{resp.code}")
|
79
41
|
end
|
80
42
|
|
81
43
|
result = JSON.parse(resp.body)
|
82
44
|
return Base64.decode64(result[0]["Value"])
|
83
45
|
end
|
84
46
|
|
47
|
+
def setKeyValue (root, key, value)
|
85
48
|
|
86
|
-
|
49
|
+
uri = URI.parse(ENV["CONSUL_URL"] + "/v1/kv/#{root}/#{key}")
|
50
|
+
http = prepareHttp(uri)
|
87
51
|
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
52
|
+
request = Net::HTTP::Put.new(uri.request_uri)
|
53
|
+
request.body = "#{value}";
|
54
|
+
resp = http.request(request)
|
55
|
+
|
56
|
+
if Integer(resp.code) != 200
|
57
|
+
puts "-- KEY VALUE NOT SAVED! #{root} #{key}"
|
58
|
+
abort("Problem adding to registry, response code #{resp.code}")
|
92
59
|
end
|
60
|
+
end
|
93
61
|
|
94
|
-
|
95
|
-
|
96
|
-
|
62
|
+
def exists (key)
|
63
|
+
uri = URI.parse(ENV["CONSUL_URL"] + "/v1/kv/#{key}")
|
64
|
+
http = prepareHttp(uri)
|
97
65
|
|
98
|
-
|
99
|
-
|
66
|
+
request = Net::HTTP::Get.new(uri.request_uri)
|
67
|
+
resp = http.request(request)
|
68
|
+
|
69
|
+
if Integer(resp.code) == 200
|
70
|
+
return true
|
71
|
+
else
|
72
|
+
return false
|
100
73
|
end
|
101
74
|
end
|
102
75
|
|
103
76
|
def deleteDirectory (root)
|
77
|
+
uri = URI.parse(ENV["CONSUL_URL"] + "/v1/kv/#{root}")
|
78
|
+
http = prepareHttp(uri)
|
104
79
|
|
105
|
-
|
106
|
-
|
107
|
-
patron.base_url = ENV["CONSUL_URL"] + '/v1/kv'
|
108
|
-
patron.headers = {'User-Agent' => 'IKE-Registry/1.0'}
|
109
|
-
end
|
110
|
-
|
111
|
-
# sess.enable_debug
|
112
|
-
resp = sess.delete("/#{root}?&recurse=true")
|
113
|
-
puts resp.body
|
80
|
+
request = Net::HTTP::Delete.new(uri.request_uri)
|
81
|
+
resp = http.request(request)
|
114
82
|
|
115
|
-
if resp.
|
116
|
-
|
83
|
+
if Integer(resp.code) != 200
|
84
|
+
puts "-- KEY NOT DELETED! " + key
|
85
|
+
abort("Response code #{resp.code}")
|
117
86
|
end
|
118
|
-
|
119
87
|
end
|
120
88
|
|
121
89
|
def registerDirectory (root)
|
90
|
+
uri = URI.parse(ENV["CONSUL_URL"] + "/v1/kv/#{root}?dir=true")
|
91
|
+
http = prepareHttp(uri)
|
122
92
|
|
123
|
-
|
124
|
-
|
125
|
-
patron.base_url = ENV["CONSUL_URL"] + '/v1/kv'
|
126
|
-
patron.headers = {'User-Agent' => 'IKE-Registry/1.0'}
|
127
|
-
end
|
128
|
-
|
129
|
-
# sess.enable_debug
|
130
|
-
resp = sess.put("/#{root}?dir=true", "")
|
131
|
-
puts resp.body
|
93
|
+
request = Net::HTTP::Put.new(uri.request_uri)
|
94
|
+
resp = http.request(request)
|
132
95
|
|
133
|
-
if resp.
|
134
|
-
|
96
|
+
if Integer(resp.code) > 202
|
97
|
+
puts "-- KEY DIRECTORY NOT SAVED! #{root}"
|
98
|
+
abort("Problem adding to registry, response code #{resp.code}")
|
135
99
|
end
|
136
|
-
|
137
100
|
end
|
138
101
|
|
139
102
|
def register (root, key, value)
|
103
|
+
setKeyValue root, key, value
|
104
|
+
end
|
140
105
|
|
141
|
-
|
142
|
-
|
143
|
-
patron.base_url = ENV["CONSUL_URL"] + '/v1/kv'
|
144
|
-
patron.headers = {'User-Agent' => 'IKE-Registry/1.0'}
|
145
|
-
end
|
106
|
+
def prepareHttp (uri)
|
107
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
146
108
|
|
147
|
-
|
148
|
-
|
149
|
-
|
109
|
+
if (Canzea::config[:consul_tls])
|
110
|
+
pemCert = File.read(Canzea::config[:consul_tls_cert_file])
|
111
|
+
pemKey = File.read(Canzea::config[:consul_tls_key_file])
|
150
112
|
|
151
|
-
|
152
|
-
|
113
|
+
http.use_ssl = true
|
114
|
+
http.ca_file = Canzea::config[:consul_tls_ca_file]
|
115
|
+
http.cert = OpenSSL::X509::Certificate.new(pemCert)
|
116
|
+
http.key = OpenSSL::PKey::RSA.new(pemKey)
|
117
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
118
|
+
# http.set_debug_output($stdout)
|
119
|
+
http.ssl_version = :SSLv23
|
153
120
|
end
|
154
121
|
|
122
|
+
return http
|
155
123
|
end
|
124
|
+
|
156
125
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: canzea
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.87
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Canzea Technologies
|
@@ -164,6 +164,7 @@ files:
|
|
164
164
|
- lib/canzea.rb
|
165
165
|
- lib/canzea/config.rb
|
166
166
|
- lib/canzea/environment.rb
|
167
|
+
- lib/canzea/registry.rb
|
167
168
|
- lib/canzea/version.rb
|
168
169
|
- lib/commands/add-env.rb
|
169
170
|
- lib/commands/apply-config.rb
|