biosphere 0.0.10 → 0.0.11

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: daf18083e0cee8c170b5cedf2362398fcc8cedd6
4
- data.tar.gz: 374321563d2b570797295cbd4fe2bee0c5ac5269
3
+ metadata.gz: 0459a0449bf2038aed5733a7c5797a16d05565c7
4
+ data.tar.gz: 0ba58ee53dd1cced9c435ce00daa960997bb217a
5
5
  SHA512:
6
- metadata.gz: f635d48699b79efc3a77d1e147f730f0a3907a7fd7b952b3f4d7e98771da834c4ce5c27d3301f869c4ac634c7c4925d32b9d5c53c6f2ed9357f5f64000d3ed98
7
- data.tar.gz: 5b9ee10cdccb717bc152e431949458efd02a8ece9fc43f925f34b8e535fb447658350f82e5c86e62abcce9235d10837205c3682ddedffa8d935c76a04871e501
6
+ metadata.gz: 4d063d3d43599ac7b9ff2dd63541aeefa3e70362478cba3e12db3c08086aa880a63892fde8ddf1f450c913a446e7c94cb17818ed59d87d645e9e1e5010c80730
7
+ data.tar.gz: fa7f3248955060ce0ac67539c0d5ac99b376f9bd8961936a167cee9c1b87142ff09686fbff0f85f7b23ce740d309f8beb223eb949cd8a6e7810b02362782afbb
@@ -185,19 +185,30 @@ class Biosphere
185
185
  def kube_apply_resource(client, resource)
186
186
  name = resource[:metadata][:name]
187
187
  responses = []
188
+ not_found = false
188
189
  begin
189
- response = client.post(resource)
190
- puts "Created resource #{response[:resource]}"
191
- responses << response
192
-
193
- rescue RestClient::Conflict => e
194
190
  response = client.get(resource)
191
+ rescue RestClient::NotFound => e
192
+ not_found = true
193
+ end
194
+
195
+ if not_found
196
+ begin
197
+ response = client.post(resource)
198
+ puts "Created resource #{response[:resource]}"
199
+ responses << response
200
+ rescue RestClient::UnprocessableEntity => e
201
+ pp e
202
+ pp JSON.parse(e.response.body)
203
+ end
204
+ else
195
205
  puts "Updating resource #{response[:resource]}"
196
206
 
197
207
  # Get the current full resource from apiserver
198
208
  update_resource = response[:body]
199
209
 
200
210
  # Merge the updates on top of it
211
+ # TODO: this doesn't remove fields from the update_resource which have been removed from the to-be-updated resource
201
212
  update_resource.merge(resource)
202
213
 
203
214
  # Remove fields which apiserver refuses to accept in PUT requests
@@ -1,3 +1,3 @@
1
1
  class Biosphere
2
- Version = "0.0.10"
2
+ Version = "0.0.11"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: biosphere
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juho Mäkinen