From 617071e61702f50ecddcac4d759572e283d89307 Mon Sep 17 00:00:00 2001 From: Mike Hiretsky Date: Mon, 10 Oct 2011 13:00:19 +0400 Subject: [PATCH] Improve getBestStage for use hardened. --- pym/cl_distr.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pym/cl_distr.py b/pym/cl_distr.py index eebfac1..51d583c 100644 --- a/pym/cl_distr.py +++ b/pym/cl_distr.py @@ -336,14 +336,20 @@ class DistributiveRepository: return max(listimgs,key=keyfunc).group() return "" - def getBestStage(self,march=None): + def getBestStage(self,march=None,hardened=None): """Get latest stage by march""" if march: - convert = {'x86_64':'amd64'} - march = convert.get(march,march) - reStage = re.compile(r'^.*/stage3-%s-(\d+)\.tar\.bz2$'%march,re.S) + march = {'x86_64':'amd64'}.get(march,march) else: - reStage = re.compile(r'^.*/stage3-[^-]+-(\d+)\.tar\.bz2$',re.S) + march = "[^-]+" + if hardened is None: + hardened = "(?:-hardened)?" + elif hardened == True: + hardened = "-hardened" + elif hardened == False: + hardened = "" + reStage = re.compile(r'^.*/stage3-%s%s-(\d+)\.tar\.bz2$'% + (march,hardened),re.S) return self._findLatestFile(self.dirs,reStage,lambda x:x.groups()[0]) class Distributive(object, SignalInterrupt):