summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-10-29 13:49:14 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-10-29 17:01:34 +0000
commitdda94cfa708cf3c6e5408d6dbcece360b4e8cd27 (patch)
tree2fd7b5b3f799d6df6b059ee7523025b7e03d0068
parent5d135d4769b6bb60d575eb6ed196367f9e077cc4 (diff)
downloadopenembedded-core-contrib-dda94cfa708cf3c6e5408d6dbcece360b4e8cd27.tar.gz
openembedded-core-contrib-dda94cfa708cf3c6e5408d6dbcece360b4e8cd27.tar.bz2
openembedded-core-contrib-dda94cfa708cf3c6e5408d6dbcece360b4e8cd27.zip
testimage: Improvements to the json logging
Tweak the preceeding commit to: * Add STARTTIME to the identifier to make it unique * Log DISTRO * Use LOG_DIR * Store the layer config in a more natural json format * Drop '_' function prefixes Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/testimage.bbclass28
1 files changed, 14 insertions, 14 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index 4057f497c4..ba2d9c491b 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -142,29 +142,29 @@ def testimage_sanity(d):
bb.fatal('When TEST_TARGET is set to "simpleremote" '
'TEST_TARGET_IP and TEST_SERVER_IP are needed too.')
-def _get_testimage_configuration(d, test_type, pid, machine):
+def get_testimage_configuration(d, test_type, machine):
import platform
+ from oeqa.utils.metadata import get_layers
configuration = {'TEST_TYPE': test_type,
- 'PROCESS_ID': pid,
'MACHINE': machine,
+ 'DISTRO': d.getVar("DISTRO"),
'IMAGE_BASENAME': d.getVar("IMAGE_BASENAME"),
'IMAGE_PKGTYPE': d.getVar("IMAGE_PKGTYPE"),
- 'HOST_DISTRO': ('-'.join(platform.linux_distribution())).replace(' ', '-')}
- layers = (d.getVar("BBLAYERS") or "").split()
- for l in layers:
- configuration['%s_BRANCH_REV' % os.path.basename(l)] = '%s:%s' % (base_get_metadata_git_branch(l, None).strip(),
- base_get_metadata_git_revision(l, None))
+ 'STARTTIME': d.getVar("DATETIME"),
+ 'HOST_DISTRO': ('-'.join(platform.linux_distribution())).replace(' ', '-'),
+ 'LAYERS': get_layers(d.getVar("BBLAYERS"))}
return configuration
+get_testimage_configuration[vardepsexclude] = "DATETIME"
-def _get_testimage_json_result_dir(d):
- json_result_dir = os.path.join(d.getVar("WORKDIR"), 'oeqa')
+def get_testimage_json_result_dir(d):
+ json_result_dir = os.path.join(d.getVar("LOG_DIR"), 'oeqa')
custom_json_result_dir = d.getVar("OEQA_JSON_RESULT_DIR")
if custom_json_result_dir:
json_result_dir = custom_json_result_dir
return json_result_dir
-def _get_testimage_result_id(configuration):
- return '%s_%s_%s' % (configuration['TEST_TYPE'], configuration['IMAGE_BASENAME'], configuration['MACHINE'])
+def get_testimage_result_id(configuration):
+ return '%s_%s_%s_%s' % (configuration['TEST_TYPE'], configuration['IMAGE_BASENAME'], configuration['MACHINE'], configuration['STARTTIME'])
def testimage_main(d):
import os
@@ -333,10 +333,10 @@ def testimage_main(d):
# Show results (if we have them)
if not results:
bb.fatal('%s - FAILED - tests were interrupted during execution' % pn, forcelog=True)
- configuration = _get_testimage_configuration(d, 'runtime', os.getpid(), machine)
- results.logDetails(_get_testimage_json_result_dir(d),
+ configuration = get_testimage_configuration(d, 'runtime', machine)
+ results.logDetails(get_testimage_json_result_dir(d),
configuration,
- _get_testimage_result_id(configuration))
+ get_testimage_result_id(configuration))
results.logSummary(pn)
if not results.wasSuccessful():
bb.fatal('%s - FAILED - check the task log and the ssh log' % pn, forcelog=True)