def CreatePackageFolder(self): if not InstallService.create_tools_folder(self.toolsdir): return False if not InstallService.create_package_folder(self.toolsdir, 'matplotlib'): return False return True
def CreatePackageFolder(self): if not InstallService.create_tools_folder(self.toolsdir): return False if not InstallService.create_package_folder(self.toolsdir, 'delphesMA5tune'): return False return True
def Download(self): # Checking connection with MA5 web site if not InstallService.check_ma5site(): return False # Launching wget logname = os.path.normpath(self.installdir + '/wget_contrib.log') if not InstallService.wget(self.files, logname, self.downloaddir): return False # Ok return True
def Download(self): # Checking connection with InSpire and the ma5 website if not InstallService.check_inspire(): return False if not InstallService.check_ma5site(): return False # Launching wget logname = os.path.normpath(self.installdir+'/wget_analyses.log') if not InstallService.wget(self.files,logname,self.downloaddir): return False # delphes cards logname = os.path.normpath(self.installdir+'/wget_delphescards.log') if not InstallService.wget(self.delphescards,logname,self.downloaddir): return False # Ok return True
def Unpack(self): # Logname logname = os.path.normpath(self.installdir+'/unpack.log') # Unpacking the tarball ok, packagedir = InstallService.untar(logname, self.downloaddir, self.tmpdir,'fastjet.tar.gz') if not ok: return False # Ok: returning the good folder self.tmpdir=packagedir return True
def GetNcores(self): self.ncores = InstallService.get_ncores(self.main.archi_info.ncores,\ self.main.forced)
def CreateTmpFolder(self): ok = InstallService.prepare_tmp(self.untardir, self.downloaddir) if ok: self.tmpdir = self.untardir return ok
def Unpack(self): # Logname logname = os.path.normpath(self.installdir + '/unpack.log') # Unpacking the tarball ok, packagedir = InstallService.untar(logname, self.downloaddir, self.tmpdir, 'delphes.tar.gz') if not ok: return False # Getting the list of files self.logger.debug('Getting the list of files ...') myfiles = glob.glob(packagedir + '/*') self.logger.debug('=> ' + str(myfiles)) # Moving files from packagedir to installdir self.logger.debug('Moving files from ' + packagedir + ' to ' + self.installdir + ' ...') for myfile in myfiles: myfile2 = myfile.split('/')[-1] if os.path.isdir(myfile): try: shutil.copytree(myfile, self.installdir + '/' + myfile2) except: self.logger.error('impossible to move the file/folder ' + myfile + ' from ' + packagedir + ' to ' + self.installdir) return False else: try: shutil.copy(myfile, self.installdir + '/' + myfile2) except: self.logger.error('impossible to move the file/folder ' + myfile + ' from ' + packagedir + ' to ' + self.installdir) return False # Updating Makefile filename = self.installdir + '/Makefile' self.logger.debug('Updating files ' + filename + ': no CMSSW\n') self.SwitchOffCMSSW(filename) # Updating Makefile filename = self.installdir + '/doc/genMakefile.tcl' self.logger.debug('Updating files ' + filename + ': no CMSSW\n') self.SwitchOffCMSSW(filename) # Updating DelphesFormula filename = self.installdir + '/classes/DelphesFormula.cc' self.logger.debug('Updating files ' + filename + ': adding d0\n') self.AddD0(filename) # Updating ExRootTask filename = self.installdir + '/external/ExRootAnalysis/ExRootTask.cc' self.logger.debug('Updating files: commenting out lines in: ' + filename + ' ...') self.CommentLines(filename, [64, 65, 66], '//') # Updating ExRootTask filename = self.installdir + '/external/ExRootAnalysis/ExRootConfReader.cc' self.logger.debug('Updating files: commenting out lines in: ' + filename + ' ...') self.CommentLines(filename, [177, 178, 179, 180], '//') # Adding files filesToAdd = ["MA5GenParticleFilter", "MA5EfficiencyD0"] if not self.CopyFiles(filesToAdd): return False if not self.UpdateDictionnary(filesToAdd): return False # Ok return True
def Unpack(self): # Logname logname = os.path.normpath(self.installdir + '/unpack.log') # Unpacking the tarball ok, packagedir = InstallService.untar(logname, self.downloaddir, self.tmpdir, 'delphestune.tar.gz') if not ok: return False # Copying the patch self.logger.debug('Copying the patch ...') input = self.toolsdir + '/SampleAnalyzer/Interfaces/delphesMA5tune/patch_delphesMA5tune.tgz' output = packagedir + '/patch_delphesMA5tune.tgz' try: shutil.copy(input, output) except: self.logger.error('impossible to copy the patch ' + input + ' to ' + output) return False # Unpacking the folder logname = os.path.normpath(self.installdir + '/unpack_patch.log') theCommands = ['tar', 'xzf', 'patch_delphesMA5tune.tgz'] self.logger.debug('shell command: ' + ' '.join(theCommands)) ok, out= ShellCommand.ExecuteWithLog(theCommands,\ logname,\ packagedir,\ silent=False) if not ok: self.logger.error('impossible to untar the patch ' + output) return False # Applying the patch logname = os.path.normpath(self.installdir + '/patch.log') theCommands = [sys.executable, 'patch.py'] self.logger.debug('shell command: ' + ' '.join(theCommands)) ok, out= ShellCommand.ExecuteWithLog(theCommands,\ logname,\ packagedir,\ silent=False) if not ok: self.logger.error('impossible to apply the patch ' + output) return False # Getting the list of files self.logger.debug('Getting the list of files ...') myfiles = glob.glob(packagedir + '/*') self.logger.debug('=> ' + str(myfiles)) # Moving files from packagedir to installdir self.logger.debug('Moving files from ' + packagedir + ' to ' + self.installdir + ' ...') for myfile in myfiles: myfile2 = myfile.split('/')[-1] if os.path.isdir(myfile): try: shutil.copytree(myfile, self.installdir + '/' + myfile2) except: self.logger.error('impossible to move the file/folder ' + myfile + ' from ' + packagedir + ' to ' + self.installdir) return False else: try: shutil.copy(myfile, self.installdir + '/' + myfile2) except: self.logger.error('impossible to move the file/folder ' + myfile + ' from ' + packagedir + ' to ' + self.installdir) return False # Ok return True
def CreatePackageFolder(self): return InstallService.create_package_folder(self.main.archi_info.ma5dir,'samples')