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> |