buildframework/helium/tools/preparation/ci.ant.xml
changeset 628 7c4a911dc066
parent 588 c7c26511138f
child 645 b8d81fa19e7d
equal deleted inserted replaced
588:c7c26511138f 628:7c4a911dc066
    95 import os
    95 import os
    96 import time
    96 import time
    97 ctime_dict = {}
    97 ctime_dict = {}
    98 root_dir = str(attributes.get('rootdir'))
    98 root_dir = str(attributes.get('rootdir'))
    99 output_dir = str(attributes.get('outputdir'))
    99 output_dir = str(attributes.get('outputdir'))
   100 for dir_ in os.listdir(root_dir):
   100 if os.path.exists(root_dir):
   101     if (os.path.isdir(os.path.join(root_dir, dir_))):
   101     for dir_ in os.listdir(root_dir):
   102         dir_ctime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(os.path.getctime(os.path.join(root_dir, dir_))))
   102         if (os.path.isdir(os.path.join(root_dir, dir_))):
   103         ctime_dict[dir_ctime] = dir_
   103             dir_ctime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(os.path.getctime(os.path.join(root_dir, dir_))))
       
   104             ctime_dict[dir_ctime] = dir_
       
   105 else:
       
   106     self.log("Skipping " + root_dir + " dir because it doesn't exist.")
   104 ctime_list = ctime_dict.keys()
   107 ctime_list = ctime_dict.keys()
   105 ctime_list.sort()
   108 ctime_list.sort()
   106 self.log(str("ctime_list: %s" % ctime_list))
   109 self.log(str("ctime_list: %s" % ctime_list))
   107 filename = time.strftime('%Y%m%d%H%M%S', time.localtime())
   110 filename = time.strftime('%Y%m%d%H%M%S', time.localtime())
   108 filename = os.path.join(output_dir, filename + '_file_delete.txt')
   111 filename = os.path.join(output_dir, filename + '_file_delete.txt')
   146 logging.basicConfig(level=logging.INFO)
   149 logging.basicConfig(level=logging.INFO)
   147 
   150 
   148 databases = []
   151 databases = []
   149 delivery = str(attributes.get('delivery'))
   152 delivery = str(attributes.get('delivery'))
   150 sessionFile = str(attributes.get('sessionfile'))
   153 sessionFile = str(attributes.get('sessionfile'))
       
   154 engine = project.getProperty('ccm.engine.host')
       
   155 dbpath = project.getProperty('ccm.database.path')
       
   156             
   151 configBuilder = configuration.NestedConfigurationBuilder(open(delivery, 'r'))
   157 configBuilder = configuration.NestedConfigurationBuilder(open(delivery, 'r'))
   152 configSet = configBuilder.getConfiguration()
   158 configSet = configBuilder.getConfiguration()
   153 for config in configSet.getConfigurations():
   159 
   154     if config['database'] not in databases:
   160 if dbpath:
   155         databases.append(config['database'])
   161     databases.append(dbpath)
       
   162 else:
       
   163     for config in configSet.getConfigurations():
       
   164         if config['database'] not in databases:
       
   165             databases.append(config['database'])
   156 
   166 
   157 config = configuration.PropertiesConfiguration()
   167 config = configuration.PropertiesConfiguration()
   158 if os.path.exists(sessionFile):
   168 if os.path.exists(sessionFile):
   159     self.log(str("Opening the file %s..." % sessionFile))
   169     self.log(str("Opening the file %s..." % sessionFile))
   160     config.load(open(sessionFile, 'r'))
   170     config.load(open(sessionFile, 'r'))
   173             update_session = False
   183             update_session = False
   174 
   184 
   175     if update_session:
   185     if update_session:
   176         try:
   186         try:
   177             self.log(str("Opening a new session for %s..." % database))
   187             self.log(str("Opening a new session for %s..." % database))
   178             session = nokia.nokiaccm.open_session(database=database)
   188             session = nokia.nokiaccm.open_session(database=database, engine=engine, dbpath=dbpath)
   179             session.close_on_exit = False        
   189             session.close_on_exit = False        
   180             config[database] = session.addr()
   190             config[database] = session.addr()
   181         except Exception, exc:
   191         except Exception, exc:
   182             traceback.print_exc()
   192             traceback.print_exc()
   183             raise exc
   193             raise exc
   288     <target name="ci-monitor-ccm-session-validate" depends="ccm-prepare-input">
   298     <target name="ci-monitor-ccm-session-validate" depends="ccm-prepare-input">
   289         <if>
   299         <if>
   290             <and>
   300             <and>
   291                 <available file="${prep.delivery.conf.parsed}"/>
   301                 <available file="${prep.delivery.conf.parsed}"/>
   292                 <isset property="ci.session.file"/>                
   302                 <isset property="ci.session.file"/>                
   293                 <isset property="run.ccm"/>
   303                 <istrue value="${ccm.enabled}"/>
   294             </and>
   304             </and>
   295             <then>
   305             <then>
   296                 <property name="do.ci-monitor-ccm-session" value="true"/>
   306                 <property name="do.ci-monitor-ccm-session" value="true"/>
   297             </then>
   307             </then>
   298             <else>
   308             <else>