biosphere 0.2.8 → 0.2.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/biosphere +42 -12
- data/lib/biosphere.rb +1 -0
- data/lib/biosphere/exceptions.rb +16 -0
- data/lib/biosphere/settings.rb +3 -0
- data/lib/biosphere/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fc7978fc42c73db8148546690ffdc26363814862
|
4
|
+
data.tar.gz: 62ab431bc12cfe129837619a221a2ab22da044d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5e6c4478856e452ea74f8f6deaa46d9ef75eeb66f7fdc10a07976b235939a8f5d6b235f7d891951c61c74e6b69283292317bbd7d4f28837cf01a8ed1b0c507cd
|
7
|
+
data.tar.gz: 390b6054285459b1870b6e1582d0ce3c1a4dfa147d39764d76277965b38b4a90db43403d33040f4683ba940c0f730a5914d0537c42923002d499b6bf94f8e6fd
|
data/bin/biosphere
CHANGED
@@ -97,18 +97,30 @@ if options.src
|
|
97
97
|
end
|
98
98
|
|
99
99
|
# We need to load the suite once so that we can find the Biosphere settings
|
100
|
-
|
101
|
-
|
100
|
+
begin
|
101
|
+
if suite.load_all(options.src) == 0 || suite.deployments.size == 0
|
102
|
+
STDERR.puts "No files found. Are you in the right directory where your biosphere .rb files are?"
|
103
|
+
exit -1
|
104
|
+
end
|
105
|
+
rescue ::Biosphere::ConfigurationError => e
|
106
|
+
STDERR.puts "Configuration Error: #{e}".colorize(:red)
|
107
|
+
STDERR.puts "Relevant configuration part:"
|
108
|
+
ap e.settings
|
102
109
|
exit -1
|
103
110
|
end
|
104
111
|
|
105
|
-
if suite.biosphere_settings[:
|
106
|
-
|
107
|
-
|
108
|
-
|
112
|
+
if suite.biosphere_settings[:local] == true
|
113
|
+
localmode = true
|
114
|
+
else
|
115
|
+
localmode = false
|
116
|
+
if suite.biosphere_settings[:s3_bucket].nil? || suite.biosphere_settings[:s3_bucket].empty? ||
|
117
|
+
suite.biosphere_settings[:state_name].nil? || suite.biosphere_settings[:state_name].empty?
|
118
|
+
puts "\nNo S3 bucket or cluster name defined in configuration, can't continue"
|
119
|
+
exit 1
|
120
|
+
end
|
121
|
+
s3 = S3.new(suite.biosphere_settings[:s3_bucket], suite.biosphere_settings[:state_name])
|
122
|
+
s3.retrieve("#{options.build_dir}/state.node")
|
109
123
|
end
|
110
|
-
s3 = S3.new(suite.biosphere_settings[:s3_bucket], suite.biosphere_settings[:state_name])
|
111
|
-
s3.retrieve("#{options.build_dir}/state.node")
|
112
124
|
|
113
125
|
# This will update the state which is already passed to the suite.
|
114
126
|
state.filename = "#{options.build_dir}/state.node"
|
@@ -149,7 +161,7 @@ if ARGV[0] == "build" && options.src
|
|
149
161
|
|
150
162
|
puts "Wrote #{count} files into #{options.build_dir}"
|
151
163
|
state.save()
|
152
|
-
s3.save("#{options.build_dir}/state.node")
|
164
|
+
s3.save("#{options.build_dir}/state.node") unless localmode
|
153
165
|
|
154
166
|
elsif ARGV[0] == "plan" && options.src
|
155
167
|
suite.evaluate_plans()
|
@@ -176,7 +188,7 @@ elsif ARGV[0] == "action" && options.src
|
|
176
188
|
STDERR.puts "Could not find action #{ARGV[1]}"
|
177
189
|
end
|
178
190
|
state.save()
|
179
|
-
s3.save("#{options.build_dir}/state.node")
|
191
|
+
s3.save("#{options.build_dir}/state.node") unless localmode
|
180
192
|
|
181
193
|
elsif ARGV[0] == "deployment" && options.src
|
182
194
|
|
@@ -198,10 +210,14 @@ elsif ARGV[0] == "statereset" && options.src
|
|
198
210
|
state = Biosphere::State.new
|
199
211
|
state.filename = "#{options.build_dir}/state.node"
|
200
212
|
state.save()
|
201
|
-
s3.save("#{options.build_dir}/state.node")
|
213
|
+
s3.save("#{options.build_dir}/state.node") unless localmode
|
202
214
|
end
|
203
215
|
|
204
216
|
elsif ARGV[0] == "commit" && options.src
|
217
|
+
if localmode
|
218
|
+
STDERR.puts "commit not supported in local mode (set in Settings :biosphere[:local] = true"
|
219
|
+
exit -1
|
220
|
+
end
|
205
221
|
|
206
222
|
if !ARGV[1]
|
207
223
|
puts "Please specify deployment name as the second parameter."
|
@@ -242,7 +258,7 @@ elsif ARGV[0] == "commit" && options.src
|
|
242
258
|
plan.print
|
243
259
|
|
244
260
|
targets = plan.get_resources.collect { |x| "-target=#{x}" }.join(" ")
|
245
|
-
|
261
|
+
puts "Targets: #{targets}"
|
246
262
|
answer = ""
|
247
263
|
while answer.empty? || (answer != "y" && answer != "n")
|
248
264
|
print "\nDoes the plan look reasonable? (Answering yes will apply the changes) y/n: "
|
@@ -292,6 +308,10 @@ elsif ARGV[0] == "commit" && options.src
|
|
292
308
|
s3.release_lock()
|
293
309
|
|
294
310
|
elsif ARGV[0] == "destroy" && options.src
|
311
|
+
if localmode
|
312
|
+
STDERR.puts "destroy not supported in local mode (set in Settings :biosphere[:local] = true"
|
313
|
+
exit -1
|
314
|
+
end
|
295
315
|
|
296
316
|
if !ARGV[1]
|
297
317
|
puts "Please specify deployment name as the second parameter."
|
@@ -324,9 +344,19 @@ elsif ARGV[0] == "destroy" && options.src
|
|
324
344
|
s3.release_lock()
|
325
345
|
|
326
346
|
elsif ARGV[0] == "lock"
|
347
|
+
if localmode
|
348
|
+
STDERR.puts "lock not supported in local mode (set in Settings :biosphere[:local] = true"
|
349
|
+
exit -1
|
350
|
+
end
|
351
|
+
|
327
352
|
s3.set_lock()
|
328
353
|
|
329
354
|
elsif ARGV[0] == "unlock"
|
355
|
+
if localmode
|
356
|
+
STDERR.puts "unlock not supported in local mode (set in Settings :biosphere[:local] = true"
|
357
|
+
exit -1
|
358
|
+
end
|
359
|
+
|
330
360
|
s3.release_lock()
|
331
361
|
|
332
362
|
else
|
data/lib/biosphere.rb
CHANGED
data/lib/biosphere/settings.rb
CHANGED
@@ -81,6 +81,9 @@ class Biosphere
|
|
81
81
|
|
82
82
|
# Finds files from relative path
|
83
83
|
def find_files(p)
|
84
|
+
if !$current_biosphere_path_stack
|
85
|
+
$current_biosphere_path_stack = "."
|
86
|
+
end
|
84
87
|
relative_path = $current_biosphere_path_stack + "/" + p
|
85
88
|
entries = Dir[(relative_path)] - [".", ".."]
|
86
89
|
return entries
|
data/lib/biosphere/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: biosphere
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juho Mäkinen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-05-
|
11
|
+
date: 2017-05-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -180,6 +180,7 @@ files:
|
|
180
180
|
- lib/biosphere/cli/terraformplanning.rb
|
181
181
|
- lib/biosphere/cli/updatemanager.rb
|
182
182
|
- lib/biosphere/deployment.rb
|
183
|
+
- lib/biosphere/exceptions.rb
|
183
184
|
- lib/biosphere/ipaddressallocator.rb
|
184
185
|
- lib/biosphere/kube.rb
|
185
186
|
- lib/biosphere/mixing/from_file.rb
|