|
|
|
@ -40,9 +40,9 @@ class DistroRepository(Linux):
|
|
|
|
|
extensiton = ['iso','tar.bz2','tar.gz','tar.7z','tar.lzma']
|
|
|
|
|
|
|
|
|
|
reDistName = re.compile("""
|
|
|
|
|
^.*/(?P<name>%(name)s)
|
|
|
|
|
-(?P<ver>%(ver)s)
|
|
|
|
|
-(?P<march>%(march)s)
|
|
|
|
|
^.*/(?P<os_linux_shortname>%(name)s)
|
|
|
|
|
-(?P<os_linux_ver>%(ver)s)
|
|
|
|
|
-(?P<os_arch_machine>%(march)s)
|
|
|
|
|
.(?P<ext>%(ext)s)$""" %
|
|
|
|
|
{'name':"[a-z0-9]+",
|
|
|
|
|
'ver':r"(\d+\.)*\d+",
|
|
|
|
@ -60,11 +60,11 @@ class DistroRepository(Linux):
|
|
|
|
|
if not match:
|
|
|
|
|
return {}
|
|
|
|
|
distdic = match.groupdict()
|
|
|
|
|
distdic["build"] = ""
|
|
|
|
|
if "ver" in distdic:
|
|
|
|
|
if re.match("^\d{8}$", distdic["ver"]):
|
|
|
|
|
distdic["build"] = distdic["ver"]
|
|
|
|
|
distdic["ver"] = ""
|
|
|
|
|
distdic["os_linux_build"] = ""
|
|
|
|
|
if "os_linux_ver" in distdic:
|
|
|
|
|
if re.match("^\d{8}$", distdic["os_linux_ver"]):
|
|
|
|
|
distdic["os_linux_build"] = distdic["os_linux_ver"]
|
|
|
|
|
distdic["os_linux_ver"] = ""
|
|
|
|
|
return distdic
|
|
|
|
|
|
|
|
|
|
def getImage(self,scratch,rootType,imagePath,march=None,
|
|
|
|
@ -288,20 +288,30 @@ class VariableClImageFilename(Variable,DistroRepository):
|
|
|
|
|
def check(self,isoimage):
|
|
|
|
|
"""Set image file"""
|
|
|
|
|
imageData = Distributive().getInfo(isoimage)
|
|
|
|
|
if not("name" in imageData and imageData.get('build','') and \
|
|
|
|
|
"march" in imageData):
|
|
|
|
|
if not("os_linux_shortname" in imageData and \
|
|
|
|
|
imageData.get('os_linux_build','') and \
|
|
|
|
|
"os_arch_machine" in imageData):
|
|
|
|
|
raise VariableError(_("Wrong image file"))
|
|
|
|
|
|
|
|
|
|
def humanImageName(self,distroinfo,filepath):
|
|
|
|
|
if all(x in distroinfo for x in ("name","march","build")):
|
|
|
|
|
distroinfo['name'] = distroinfo['name'].upper()
|
|
|
|
|
fullname = Linux.dictLinuxName.get(distroinfo['name'],"Calculate")
|
|
|
|
|
subname = Linux.dictLinuxSubName.get(distroinfo['name'],"")
|
|
|
|
|
if all(x in distroinfo for x in ("os_linux_shortname",
|
|
|
|
|
"os_arch_machine",
|
|
|
|
|
"os_linux_build")):
|
|
|
|
|
distroinfo['os_linux_shortname'] = \
|
|
|
|
|
distroinfo['os_linux_shortname'].upper()
|
|
|
|
|
fullname = distroinfo.get('os_linux_name',
|
|
|
|
|
Linux.dictLinuxName.get(
|
|
|
|
|
distroinfo['os_linux_shortname'],"Calculate"))
|
|
|
|
|
subname = distroinfo.get('os_linux_subname',
|
|
|
|
|
Linux.dictLinuxSubName.get(
|
|
|
|
|
distroinfo['os_linux_shortname'],""))
|
|
|
|
|
if subname:
|
|
|
|
|
subname=" %s"%subname
|
|
|
|
|
return "{fullname} {march} {build}".format(
|
|
|
|
|
vers = distroinfo['os_linux_build'] or \
|
|
|
|
|
distroinfo.get('os_linux_ver','')
|
|
|
|
|
return "{fullname} {os_arch_machine} {ver}".format(
|
|
|
|
|
fullname="%s%s"%(fullname,subname),filepath=filepath,
|
|
|
|
|
**distroinfo)
|
|
|
|
|
ver=vers,**distroinfo)
|
|
|
|
|
else:
|
|
|
|
|
return filepath
|
|
|
|
|
|
|
|
|
|