forj 1.0.12 → 1.0.13
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a062220b32731df2805ca604f0f0cb2233613075
|
4
|
+
data.tar.gz: d5c331135e78162961bc967e328530127aeacb0c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 12720b05fba4b2f5fd348039db09f2900984f080da139d9b3c48fecc67b0eb9c2cf7d788af47f6abb6dd19b8dc5896e284ee114f7e06746e02ac27d2fcdc9f62
|
7
|
+
data.tar.gz: 7980b5830ec4de440b24e8baa7cade68ff3df6eee1c7c287abd221e0494e2e471ec80417de0259479b9928dd8560e3f67eb64e89489a7a74a1bef1b4cb8196b5
|
data/forj.gemspec
CHANGED
@@ -19,8 +19,8 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.name = 'forj'
|
20
20
|
s.homepage = 'https://www.forj.io'
|
21
21
|
|
22
|
-
s.version = '1.0.
|
23
|
-
s.date = '2015-05-
|
22
|
+
s.version = '1.0.13'
|
23
|
+
s.date = '2015-05-26'
|
24
24
|
s.summary = 'forj command line'
|
25
25
|
s.description = 'forj cli - See https://www.forj.io for documentation/information'
|
26
26
|
|
data/lib/boot.rb
CHANGED
@@ -253,9 +253,9 @@ pwd
|
|
253
253
|
res_found = param.match(/^(.*)#(.*)$/)
|
254
254
|
|
255
255
|
if res_found
|
256
|
-
cert_file = res_found[1]
|
256
|
+
cert_file = File.expand_path(res_found[1])
|
257
257
|
else
|
258
|
-
cert_file = param
|
258
|
+
cert_file = File.expand_path(param)
|
259
259
|
end
|
260
260
|
|
261
261
|
unless File.readable?(cert_file)
|
@@ -30,7 +30,7 @@
|
|
30
30
|
Maestro gardener is currently configured to access your cloud Compute service with fog openstack.
|
31
31
|
Fog openstack is compatible with hpcloud services
|
32
32
|
|
33
|
-
It requires the openstack project name, user and password.
|
33
|
+
It requires the openstack uri, project name, user and password.
|
34
34
|
:bp_config:
|
35
35
|
:desc: "Maestro and blueprint configuration:"
|
36
36
|
:maestro_access_config:
|
@@ -120,6 +120,7 @@
|
|
120
120
|
:account: true
|
121
121
|
:required: true
|
122
122
|
:ask_step: :provider_config
|
123
|
+
:gardener:
|
123
124
|
:os_user:
|
124
125
|
:desc: "Openstack compute cloud User name"
|
125
126
|
:account_exclusive: true
|
@@ -128,6 +129,7 @@
|
|
128
129
|
:validate: !ruby/regexp /\w+/
|
129
130
|
:ask_step: :gardener_config
|
130
131
|
:default_value: "<%= (config[:provider] == 'openstack')?config['credentials#account_id']:nil %>"
|
132
|
+
:ask_sort: 2
|
131
133
|
:os_enckey:
|
132
134
|
:desc: "Openstack compute cloud password"
|
133
135
|
:account_exclusive: true
|
@@ -136,6 +138,22 @@
|
|
136
138
|
:required: true
|
137
139
|
:ask_step: :gardener_config
|
138
140
|
:default_value: "<%= (config[:provider] == 'openstack')?config['credentials#account_key']:nil %>"
|
141
|
+
:ask_sort: 3
|
142
|
+
:os_auth_uri:
|
143
|
+
:desc: "Openstack service auth url"
|
144
|
+
:explanation: |-
|
145
|
+
If needed, you can set a different way for Maestro to authenticate itself to the cloud
|
146
|
+
|
147
|
+
Currently, Gardener supports only openstack cloud type, with authentication version 2.
|
148
|
+
Multiple provider support and Openstack authentication v3 will be implemented soon.
|
149
|
+
:account_exclusive: true
|
150
|
+
:account: true
|
151
|
+
:required: true
|
152
|
+
:ask_sort: 0
|
153
|
+
:default_value: "<%= (config[:provider] == 'openstack')?config['credentials#auth_uri']:nil %>"
|
154
|
+
:validate: !ruby/regexp /v2.0\/tokens/
|
155
|
+
:ask_step: :gardener_config
|
156
|
+
|
139
157
|
|
140
158
|
# Defines DNS services for maestro
|
141
159
|
:dns:
|
@@ -161,11 +179,11 @@
|
|
161
179
|
# Defines maestro environment.
|
162
180
|
:maestro:
|
163
181
|
:tenant_name:
|
164
|
-
:desc: "Tenant name
|
182
|
+
:desc: "Tenant name"
|
165
183
|
:account: true
|
166
184
|
:validate: !ruby/regexp /^\w?[\w_:-]*$/
|
167
185
|
:ask_step: :gardener_config
|
168
|
-
:ask_sort:
|
186
|
+
:ask_sort: 1
|
169
187
|
:default_value: "<%= (config[:provider] == 'openstack')?config['credentials#tenant']:nil %>"
|
170
188
|
:network_name:
|
171
189
|
:desc: "Network name to attach to each forge boxes. By default we use 'forj'. If it doesn't exist, it will be created."
|
@@ -30,9 +30,10 @@ class ForjCoreProcess
|
|
30
30
|
res_found = cert_file.match(/^(.*)#(.*)$/)
|
31
31
|
|
32
32
|
if res_found
|
33
|
-
cert_file =
|
33
|
+
cert_file = File.expand_path(res_found[1])
|
34
34
|
dest_file = "/tmp/#{File.basename(res_found[2])}"
|
35
35
|
else
|
36
|
+
cert_file = File.expand_path(cert_file)
|
36
37
|
dest_file = File.basename(cert_file)
|
37
38
|
end
|
38
39
|
|
@@ -57,8 +57,9 @@ class Lorj::BaseDefinition # rubocop: disable Style/ClassAndModuleChildren
|
|
57
57
|
obj_needs :data, 'dns#domain_name'
|
58
58
|
obj_needs :data, 'maestro#tenant_name'
|
59
59
|
# sent in base64
|
60
|
-
obj_needs :data, '
|
61
|
-
obj_needs :data, '
|
60
|
+
obj_needs :data, 'gardener#os_user'
|
61
|
+
obj_needs :data, 'gardener#os_enckey'
|
62
|
+
obj_needs :data, 'gardener#os_auth_uri'
|
62
63
|
obj_needs :data, 'credentials#account_id'
|
63
64
|
obj_needs :data, 'credentials#account_key'
|
64
65
|
obj_needs :data, 'credentials#auth_uri'
|
@@ -568,10 +568,13 @@ class ForjCoreProcess
|
|
568
568
|
def load_hpcloud(hParams, os_key)
|
569
569
|
hpcloud_priv = nil
|
570
570
|
IO.popen('gzip -c', 'r+') do|pipe|
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
571
|
+
data = <<-END
|
572
|
+
HPCLOUD_OS_USER='#{hParams['gardener#os_user']}'
|
573
|
+
HPCLOUD_OS_KEY='#{os_key}'
|
574
|
+
DNS_KEY='#{hParams[:'credentials#account_id']}'
|
575
|
+
DNS_SECRET='#{hParams['credentials#account_key']}'
|
576
|
+
END
|
577
|
+
pipe.puts(data)
|
575
578
|
pipe.close_write
|
576
579
|
hpcloud_priv = pipe.read
|
577
580
|
end
|
@@ -594,9 +597,10 @@ class ForjCoreProcess
|
|
594
597
|
'PUPPET_DEBUG' => 'True',
|
595
598
|
'image_name' => hParams['maestro#image_name'],
|
596
599
|
'key_name' => hParams['credentials#keypair_name'],
|
600
|
+
# The following is used by gardener
|
597
601
|
# Remove pad
|
598
602
|
'hpcloud_priv' => Base64.strict_encode64(hpcloud_priv).gsub('=', ''),
|
599
|
-
'compute_os_auth_url' => hParams['
|
603
|
+
'compute_os_auth_url' => hParams['gardener#os_auth_uri']
|
600
604
|
}
|
601
605
|
|
602
606
|
if hParams['dns#dns_service']
|
@@ -628,7 +632,7 @@ class ForjCoreProcess
|
|
628
632
|
def build_metadata(sObjectType, hParams)
|
629
633
|
entr = load_encoded_key
|
630
634
|
|
631
|
-
os_enckey = hParams['
|
635
|
+
os_enckey = hParams['gardener#os_enckey']
|
632
636
|
|
633
637
|
os_key = decrypt_key(os_enckey, entr)
|
634
638
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: forj
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- forj team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-05-
|
11
|
+
date: 2015-05-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|