瀏覽代碼

oeqa/selftest: Improvements to the json logging

Tweak the preceeding commit to:

* Add STARTTIME to the identifier to make it unique
* Use LOG_DIR
* Store the layer config in a more natural json format
* Drop '_' function prefixes

(From OE-Core rev: 173f59acf9722e2ef27fdd49c20f7d3d664917eb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie 6 年之前
父節點
當前提交
1418c0ea24
共有 1 個文件被更改,包括 11 次插入14 次删除
  1. 11 14
      meta/lib/oeqa/selftest/context.py

+ 11 - 14
meta/lib/oeqa/selftest/context.py

@@ -204,30 +204,27 @@ class OESelftestTestContextExecutor(OETestContextExecutor):
         self.tc.logger.info("Running bitbake -e to test the configuration is valid/parsable")
         runCmd("bitbake -e")
 
-    def _get_json_result_dir(self, args):
-        json_result_dir = os.path.join(os.path.dirname(os.path.abspath(args.output_log)), 'oeqa')
+    def get_json_result_dir(self, args):
+        json_result_dir = os.path.join(os.path.dirname(os.path.abspath(args.output_log)), 'log', 'oeqa')
         if "OEQA_JSON_RESULT_DIR" in self.tc.td:
             json_result_dir = self.tc.td["OEQA_JSON_RESULT_DIR"]
 
         return json_result_dir
 
-    def _get_configuration(self, args):
+    def get_configuration(self, args):
         import platform
         from oeqa.utils.metadata import metadata_from_bb
         metadata = metadata_from_bb()
         configuration = {'TEST_TYPE': 'oeselftest',
-                        'START_TIME': args.test_start_time,
+                        'STARTTIME': args.test_start_time,
                         'MACHINE': self.tc.td["MACHINE"],
                         'HOST_DISTRO': ('-'.join(platform.linux_distribution())).replace(' ', '-'),
-                        'HOST_NAME': metadata['hostname']}
-        layers = metadata['layers']
-        for l in layers:
-            configuration['%s_BRANCH_REV' % os.path.basename(l)] = '%s:%s' % (metadata['layers'][l]['branch'],
-                                                                              metadata['layers'][l]['commit'])
+                        'HOST_NAME': metadata['hostname'],
+                        'LAYERS': metadata['layers']}
         return configuration
 
-    def _get_result_id(self, configuration):
-        return '%s_%s_%s' % (configuration['TEST_TYPE'], configuration['HOST_DISTRO'], configuration['MACHINE'])
+    def get_result_id(self, configuration):
+        return '%s_%s_%s_%s' % (configuration['TEST_TYPE'], configuration['HOST_DISTRO'], configuration['MACHINE'], configuration['STARTTIME'])
 
     def _internal_run(self, logger, args):
         self.module_paths = self._get_cases_paths(
@@ -245,10 +242,10 @@ class OESelftestTestContextExecutor(OETestContextExecutor):
         else:
             self._pre_run()
             rc = self.tc.runTests(**self.tc_kwargs['run'])
-            configuration = self._get_configuration(args)
-            rc.logDetails(self._get_json_result_dir(args),
+            configuration = self.get_configuration(args)
+            rc.logDetails(self.get_json_result_dir(args),
                           configuration,
-                          self._get_result_id(configuration))
+                          self.get_result_id(configuration))
             rc.logSummary(self.name)
 
         return rc