Ignore:
Timestamp:
Dec 16, 2016, 12:47:55 PM (4 years ago)
Author:
jrpelegrina
Message:

WIP in new gui. Add some features

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-up/trunk/fuentes/lliurex-up-gui/LliurexUpConnect.py

    r3035 r3094  
    1919
    2020        def __init__(self):
     21
    2122                self.llxUpCore=LliurexUpCore.LliurexUpCore()
    2223                GObject.threads_init()
    2324                log_msg="------------------------------------------\n"+"LLIUREX-UP STARTING AT: " + datetime.datetime.today().strftime("%d/%m/%y %H:%M:%S") +"\n------------------------------------------"
    2425                self.log(log_msg)
     26                #self.saveTargetMetapackagePath=os.path.join(self.llxUpCore.processPath,"targetMetapackage")
     27                self.preactions_token=os.path.join(self.llxUpCore.processPath,'preactions_token')
     28                self.upgrade_token=os.path.join(self.llxUpCore.processPath,'upgrade_token')
     29                self.installflavour_token=os.path.join(self.llxUpCore.processPath,'installflavour_token')
     30                self.postactions_token=os.path.join(self.llxUpCore.processPath,'postactions_token')
     31
    2532                self.checkInitialFlavour()
    2633
     
    3138        def checkInitialFlavour(self):
    3239
    33                  self.targetMetapackage=None
    34 
    35                  try:
     40                self.targetMetapackage=None
     41
     42                try:
    3643                        self.targetMetapackage=self.llxUpCore.checkFlavour()
    3744                        log_msg="Initial check metapackage. Metapackage to install: " + str(self.targetMetapackage)
    3845                        self.log(log_msg)
     46                       
     47                        #if self.targetMetapackage !=None:
     48                        self.metapackageRef=self.llxUpCore.metapackageRef
     49                        if len(self.metapackageRef)==0:
     50                                self.llxUpCore.getTargetMetapackage()
     51                        self.metapackageRef=sorted(self.metapackageRef)
     52                         
    3953                        self.previousFlavours=self.llxUpCore.previuosFlavours
    40 
    4154                        if len(self.previousFlavours)==0:
    4255                                self.llxUpCore.getPreviuosFlavours()
     
    4558                        self.log(log_msg)
    4659                 
    47                  except Exception as e:
     60                except Exception as e:
    4861                        log_msg="Initial check metapackage. Error: " + str(e)
    4962                        self.log(log_msg)
    5063
    51                  return self.targetMetapackage
     64                return self.targetMetapackage
    5265
    5366        #def checkFlavoour
    5467
     68
     69        # def saveTargetMetapackage(self):
     70
     71        #       try:
     72        #               aux=open(self.saveTargetMetapackagePath,'w')
     73        #               x=self.targetMetapackage.split("-")[2]
     74        #               aux.write(x+"\n")
     75        #               x="edu"
     76        #               aux.write(x+"\n")
     77        #               aux.close()
     78
     79        #       except Exception as e:
     80        #               print str(e)   
     81
    5582        def requiresInstallFlavour(self):
    5683               
     
    5885               
    5986                self.flavours=self.llxUpCore.flavours
    60                 log_msg="Get update flavours " + str(self.flavours)
     87                log_msg="Get update flavours: " + str(self.flavours)
    6188                self.log(log_msg)
    6289
    6390                if not 'None' in self.previousFlavours:
    6491                        if self.previousFlavours !=self.flavours:
    65                                 log_msg="Requires Install Flavour: Yes"
     92                                flavourToInstall=self.parseFlavourToInstall(self.previousFlavours)
     93                                log_msg="Requires Install this Flavour: " + str(flavourToInstall)
    6694                                self.log(log_msg)
    6795                               
     
    7098                                self.log(log_msg)       
    7199                                                       
     100                else:
     101                        log_msg="Flavours reference: " + str(self.metapackageRef)
     102                        self.log(log_msg)
     103                        if self.metapackageRef != self.flavours:
     104                                flavourToInstall=self.parseFlavourToInstall(self.metapackageRef)
     105
     106                                log_msg="Requires Install this Flavour: " + str(flavourToInstall)
     107                                self.log(log_msg)
     108                        else:
     109                                log_msg="Requires Install Flavour: No"
     110                                self.log(log_msg)
    72111
    73112                return flavourToInstall                                         
    74113                       
     114
     115        def parseFlavourToInstall(self,flavours):
     116       
     117                parse_flavour=""
     118
     119                for item in flavours:
     120                        if item != "edu":
     121                                parse_flavour=parse_flavour + " " + "lliurex-meta-" + item
     122
     123                return parse_flavour                   
    75124
    76125        def canConnectToLliurexNet(self):
     
    192241                return self.lliurexVersionLocal
    193242
     243
    194244        def getLliurexVersionNet(self):
    195245               
     
    210260        def getPackagesToUpdate(self):
    211261               
     262                ref_flavour=["lliurex-meta-server","lliurex-meta-client", "lliurex-meta-desktop", "lliurex-meta-music", "lliurex-meta-pyme", "lliurex-meta-infantil"]
     263                self.incorrect_flavours=[]
    212264                try:
    213265                        packages_parse=[]
     
    217269                                        version=packages[item]
    218270                                        packages_parse.append(item+";"+version['candidate']+";"+'20Mb')
     271                                        if item in ref_flavour:
     272                                                self.incorrect_flavours.append(item)
    219273
    220274                        log_msg="Get packages to update: OK"
     
    228282
    229283
     284        def checkIncorrectFlavours(self):
     285               
     286                count=0
     287
     288                if len(self.incorrect_flavours)>0:
     289
     290                        for item in self.incorrect_flavours:
     291                                if self.targetMetapackage != None:
     292                                        print self.targetMetapackage
     293                                        if item != self.targetMetapackage:
     294                                                count=count+1
     295                                else:
     296                                        meta=item.split("-")[2]
     297                                        if 'None' in self.previousFlavours:
     298                                                if not meta in self.metapackageRef:
     299                                                        count=count+1
     300                                        else:           
     301                                                if not meta in self.previousFlavours:
     302                                                        count=count+1
     303
     304                if count>0:
     305                        log_msg="Checking incorrect flavours. Others flavours detected: " + str(self.incorrect_flavours)
     306                        self.log(log_msg)
     307                        return True
     308
     309                else:
     310                        log_msg="Checking incorrect flavours. Others flavours no detected"
     311                        self.log(log_msg)
     312                        return False
     313
     314
     315        def preActionsScript(self):
     316
     317                try:
     318                        self.preActions=self.llxUpCore.preActionsScript()
     319                        self.preActions=self.preActions + ' ;touch ' + self.preactions_token + '\n'
     320                        return self.preActions
     321
     322                except Exception as e:
     323                        print str(e)   
     324
     325        def distUpgradeProcess(self):
     326               
     327                self.distupgrade='apt-get dist-upgrade -sV ;touch ' + self.upgrade_token + '\n'
     328       
     329                return self.distupgrade
     330
     331
     332
    230333        def checkFinalFlavour(self):
    231334               
     
    236339                        log_msg="Final check metapackage. Metapackage to install: " + str(self.targetMetapackage)
    237340                        self.log(log_msg)
    238 
    239                         if self.targetMetapackage == None:
     341                        if self.targetMetapackage==None:
    240342                                flavourToInstall=self.requiresInstallFlavour()
    241                         else:
    242                                 flavourToInstall=self.targetMetapackage
     343                        else:
     344                                flavourToInstall=self.targetMetapackage         
     345
     346                except Exception as e:
     347                        log_msg="Final check metapackage. Error: " + str(e)
     348                        self.log(log_msg)
     349
     350                return flavourToInstall         
    243351       
    244 
    245                 except Exception as e:
    246                         log_msg="Final check metapackage. Error: " + str(e)
    247                         self.log(log_msg)
    248 
    249                 return flavourToInstall                         
     352        def installFinalFlavour(self,flavourToInstall):
     353
     354                self.command='apt-get install ' + flavourToInstall + ' -sV ;touch ' + self.installflavour_token + '\n'
     355                return self.command
     356
     357        def postActionsScript(self):
     358
     359                try:
     360                        self.postActions=self.llxUpCore.postActionsScript()
     361                        self.postActions=self.postActions + ' ;touch ' + self.postactions_token + '\n'
     362                        return self.postActions
     363
     364                except Exception as e:
     365                        print str(e)   
     366
     367
     368        def cleanEnvironment(self):
     369               
     370                try:
     371                        self.llxUpCore.cleanEnvironment()
     372                        log_msg="Clean environment: OK"
     373                        self.log(log_msg)
     374
     375                except Exception as e:
     376                        log_msg="Clean environment. Error :" + str(e)
     377                        self.log(log_msg)                               
    250378
    251379        #def getPackagesToUpdate
Note: See TracChangeset for help on using the changeset viewer.