Ignore:
Timestamp:
Feb 22, 2017, 6:32:09 PM (3 years ago)
Author:
jrpelegrina
Message:

WIP in clients checks

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lliurex-up/trunk/fuentes/python-lliurex-up/lliurex/lliurexup/__init__.py

    r3542 r3690  
    1414                self.defaultMirror = 'llx16'
    1515                self.defaultVersion = 'xenial'
     16                self.lockTokenPath="/var/run/lliurexUp.lock"
    1617                self.processPath = '/var/run/lliurex-up'
    1718                self.sourcesListPath='/etc/apt/'
     
    2021                self.origsourcesfile=os.path.join(self.sourcesListPath,"sources.list")
    2122                self.origsourcesfileback=os.path.join(self.sourcesListPath,"lliurexup_sources.list")
    22 
    2323                self.targetMetapackagePath=os.path.join(self.processPath,"targetMetapackage")
    2424                self.previousflavourspath = os.path.join(self.processPath,'previousflavours')
     
    3131                self.postActionsPath = '/usr/share/lliurex-up/postActions'
    3232
     33                self.createLockToken()
    3334                self.n4d = xmlrpclib.ServerProxy('https://localhost:9779')
    3435                self.haveLliurexMirror = False
    3536                self.metapackageRef=[]
    3637                self.previousFlavours = []
     38
    3739                self.getTargetMetapackage()
    3840                self.flavours = []
     
    4143                        self.haveLliurexMirror = True
    4244                self.prepareEnvironment()
     45
     46
     47        def createLockToken(self):
     48
     49                if not os.path.exists(self.lockTokenPath):
     50                        f=open(self.lockTokenPath,'w')
     51                        f.close
    4352
    4453        def getPreviousFlavours(self):
     
    8392                        self.getPreviousFlavours()
    8493               
     94
     95                self.writeDefaultSourceslist()
     96                self.writeDefaultSourceslistMirror()
    8597                self.addSourcesListLliurex()
    8698
     
    97109
    98110        def writeDefaultSourceslist(self):
     111
    99112                f = open(os.path.join(self.processSourceslist,'default'),'w')
    100113                f.write('deb http://lliurex.net/{version} {version} main restricted universe multiverse\n'.format(version=self.defaultVersion))
     
    123136                        os.mkdir(self.changelogsPath)
    124137
    125                 self.writeDefaultSourceslist()
    126                 self.writeDefaultSourceslistMirror()
     138                #self.writeDefaultSourceslist()
     139                #self.writeDefaultSourceslistMirror()
    127140
    128141        def addSourcesListLliurex(self):
    129142               
    130                 sourcesrefmirror=os.path.join(self.processSourceslist, 'default_mirror')
     143                #sourcesrefmirror=os.path.join(self.processSourceslist, 'default_mirror')
    131144
    132145                newsourcesfile=os.path.join(self.sourcesListPath,'sources.list')
     
    166179                        os.rename(self.origsourcesfileback,self.origsourcesfile)
    167180
     181        def readSourcesList(self):
     182               
     183                count=0
     184                if os.path.exists(self.origsourcesfile):
     185                        sources=open(self.origsourcesfile,'r')
     186                        ref="/lliurex.net/"+str(self.defaultVersion)
     187                        for line in sources:
     188                                if ref in line:
     189                                        if not "#" in line:
     190                                                count=count+1
     191                return count           
    168192
    169193        def cleanEnvironment(self):
     
    173197                self.restoreOrigSourcesList()   
    174198
     199        def cleanLliurexUpLock(self):
     200
     201                if os.path.exists(self.lockTokenPath):
     202                        os.remove(self.lockTokenPath)
    175203
    176204        def updateCacheApt(self,options=""):
     
    207235                '''
    208236                sourceslistDefaultPath = os.path.join(self.processSourceslist,'default')
     237
     238                if "client" in self.previousFlavours or "lliurex-meta-client"==self.targetMetapackage:
     239                        sources=self.readSourcesList()
     240                        if sources==0:
     241                                sourceslistDefaultPath = os.path.join(self.processSourceslist,'default-mirror')
     242
     243
    209244                options = ""
    210245                if self.canConnectToLliurexNet():
     
    230265                        This function install lliurex-up
    231266                '''
     267                self.updateCacheApt(options)
    232268                command = "LANG=C LANGUAGE=en apt-get install --force-yes --yes lliurex-up {options}".format(options=options)
    233269                p = subprocess.Popen(command,shell=True,stdout=subprocess.PIPE)
     
    255291                        return result['status']
    256292                return False
     293
     294        def clientCheckingMirrorIsRunning(self):
     295
     296                if self.targetMetapackage=="lliurex-meta-client" or "client" in self.previousFlavours or "client" in self.metapackageRef:
     297
     298                        client=xmlrpclib.ServerProxy('https://server:9779')
     299                        result=client.is_alive('','MirrorManager')
     300                        return result['status']
     301
     302                return False   
    257303
    258304        def getPercentageLliurexMirror(self):
Note: See TracChangeset for help on using the changeset viewer.