@@ -293,8 +293,9 @@ def clean(self, ptypes=None):
293293 replica_sets = []
294294 for replica_set in replica_sets :
295295 current_version_name = replica_set ['metadata' ]['labels' ]['version' ]
296- # skip the latest release
297- if current_version_name == self .version_name :
296+ # skip the later release
297+ current_version = int (current_version_name [1 :])
298+ if current_version >= self .version :
298299 continue
299300
300301 # aggregate versions together to removal all at once
@@ -313,9 +314,9 @@ def clean(self, ptypes=None):
313314 # handle Deployments specific cleanups
314315 self ._cleanup_deployment_secrets_and_configs (self .app .id , ptypes )
315316 # Remove stray pods
316- self ._cleanup_stray_pods (self .app .id , ptypes , self .version_name )
317+ self ._cleanup_stray_pods (self .app .id , ptypes , self .version )
317318
318- def _cleanup_stray_pods (self , namespace , ptypes , latest_version_name ):
319+ def _cleanup_stray_pods (self , namespace , ptypes , latest_version ):
319320 labels = {'heritage' : 'drycc' }
320321 if ptypes is not None :
321322 labels ['type__in' ] = ptypes
@@ -326,9 +327,9 @@ def _cleanup_stray_pods(self, namespace, ptypes, latest_version_name):
326327 if self .scheduler ().pod .deleted (pod ):
327328 continue
328329
329- current_version_name = pod ['metadata' ]['labels' ]['version' ]
330- # skip the latest release
331- if current_version_name == latest_version_name :
330+ current_version = int ( pod ['metadata' ]['labels' ]['version' ][ 1 :])
331+ # skip the later release
332+ if current_version >= latest_version :
332333 continue
333334
334335 try :
@@ -355,8 +356,11 @@ def _cleanup_deployment_secrets_and_configs(self, namespace, ptypes=None):
355356 if not replicasets :
356357 replicasets = []
357358 for replicaset in replicasets :
359+ replica_version = int (replicaset ['metadata' ]['labels' ]['version' ][1 :])
360+ # only remove the older releases secret
358361 if (
359362 'version' not in replicaset ['metadata' ]['labels' ] or
363+ replica_version < self .version or
360364 replicaset ['metadata' ]['labels' ]['version' ] in version_names
361365 ):
362366 continue
0 commit comments