dapp 0.35.19 → 0.35.20

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
  SHA256:
3
- metadata.gz: 1096d1c5b40a4b8a2a7e846011c8bd523210086a5f687b17201e14ac63feb54d
4
- data.tar.gz: daf29422d5e775b71d37fa0a47c74073433aa3f71ca1617ed54c05285f4f16b9
3
+ metadata.gz: d64c460926bafffcda0fdf0adea192569f59a6fa6d2e25ba25c171392aa24099
4
+ data.tar.gz: 28f5e418c478b20ca2a69ca66c452d9e84b4d12747d1bc54216c5e08c8e4ba93
5
5
  SHA512:
6
- metadata.gz: a26e3421d1c746667bf77570fee2e63b7bfad185f2c1e1361dd95d895c834341b541d1064d3e8c33c6e7a9e0980034cc9a7434fe4344233c995c1cb02aa3d290
7
- data.tar.gz: 7706e33a07c2497c7612594a6376396b7b15e11ac05b9518b8c696549283d34285b4ae793d9f8a72d35b0e8615530b9d4d9e91b45bc1ac410d2b3f7ebef0c000
6
+ metadata.gz: 55be14ee7e213a1f219b1d5fdbf16df6f80549fbd8c480551ce98cae3c49e8f9fb22776ac47313ce37bc69105b163c67ae6612f94ee14df8b552beb7204e5975
7
+ data.tar.gz: 58a9ced886ed71720d2eda2584fed5ef757a8621be726c6d20ecaaa9da09c657119442b7716999556ea96778c2a4b2e83b76bce183df0ca34521b7f1ecf3c977
@@ -50,12 +50,11 @@ module Dapp
50
50
 
51
51
  dapp.log_step("[#{Time.now}] Poll deployment '#{d.name}' status")
52
52
  dapp.with_log_indent do
53
- dapp.log_info("Target replicas: #{_field_value_for_log(d.replicas)}")
54
- dapp.log_info("Updated replicas: #{_field_value_for_log(d.status['updatedReplicas'])} / #{_field_value_for_log(d.replicas)}")
55
- dapp.log_info("Available replicas: #{_field_value_for_log(d.status['availableReplicas'])} / #{_field_value_for_log(d.replicas)}")
53
+ dapp.log_info("Replicas: #{_field_value_for_log(d.status['replicas'])}")
54
+ dapp.log_info("Updated replicas: #{_field_value_for_log(d.status['updatedReplicas'])}")
55
+ dapp.log_info("Available replicas: #{_field_value_for_log(d.status['availableReplicas'])}")
56
+ dapp.log_info("Unavailable replicas: #{_field_value_for_log(d.status['unavailableReplicas'])}")
56
57
  dapp.log_info("Ready replicas: #{_field_value_for_log(d.status['readyReplicas'])} / #{_field_value_for_log(d.replicas)}")
57
- dapp.log_info("Old deployment.kubernetes.io/revision: #{_field_value_for_log(@revision_before_deploy)}")
58
- dapp.log_info("Current deployment.kubernetes.io/revision: #{_field_value_for_log(d_revision)}")
59
58
  end
60
59
 
61
60
  rs = nil
@@ -84,6 +83,16 @@ module Dapp
84
83
  end
85
84
 
86
85
  if rs
86
+ dapp.with_log_indent do
87
+ dapp.log_step("Current ReplicaSet '#{rs.name}' status")
88
+ dapp.with_log_indent do
89
+ dapp.log_info("Replicas: #{_field_value_for_log(rs.status['replicas'])}")
90
+ dapp.log_info("Fully labeled replicas: #{_field_value_for_log(rs.status['fullyLabeledReplicas'])}")
91
+ dapp.log_info("Available replicas: #{_field_value_for_log(rs.status['availableReplicas'])}")
92
+ dapp.log_info("Ready replicas: #{_field_value_for_log(rs.status['readyReplicas'])} / #{_field_value_for_log(d.replicas)}")
93
+ end
94
+ end
95
+
87
96
  # Pod'ы связанные с активным ReplicaSet
88
97
  rs_pods = dapp.kubernetes.pod_list['items']
89
98
  .map {|spec| Kubernetes::Client::Resource::Pod.new(spec)}
@@ -168,19 +177,14 @@ module Dapp
168
177
  end # with_log_indent
169
178
  end
170
179
 
171
- if d_revision && d.replicas
172
- if d.replicas == 0
173
- break
174
- else
175
- break if begin
176
- d.status['updatedReplicas'] &&
177
- d.status['availableReplicas'] &&
178
- d.status['readyReplicas'] &&
179
- (d.status['updatedReplicas'] >= d.replicas) &&
180
- (d.status['availableReplicas'] >= d.replicas) &&
181
- (d.status['readyReplicas'] >= d.replicas)
182
- end
183
- end
180
+ # break only when rs is not nil
181
+
182
+ if d_revision && d.replicas && d.replicas == 0
183
+ break
184
+ end
185
+
186
+ if d_revision && d.replicas && rs
187
+ break if is_deployment_ready(d) && is_replicaset_ready(d, rs)
184
188
  end
185
189
 
186
190
  sleep 5
@@ -189,6 +193,14 @@ module Dapp
189
193
  end
190
194
  end
191
195
 
196
+ def is_deployment_ready(d)
197
+ d.status.key?("readyReplicas") && d.status["readyReplicas"] >= d.replicas
198
+ end
199
+
200
+ def is_replicaset_ready(d, rs)
201
+ rs.status.key?("readyReplicas") && rs.status["readyReplicas"] >= d.replicas
202
+ end
203
+
192
204
  private
193
205
 
194
206
  def _field_value_for_log(value)
@@ -1,4 +1,4 @@
1
1
  module Dapp
2
- VERSION = "0.35.19"
2
+ VERSION = "0.35.20"
3
3
  BUILD_CACHE_VERSION = 31
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dapp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.35.19
4
+ version: 0.35.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Stolyarov