From dda94cfa708cf3c6e5408d6dbcece360b4e8cd27 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Mon, 29 Oct 2018 13:49:14 +0000 Subject: 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 --- meta/classes/testimage.bbclass | 28 ++++++++++++++-------------- 1 file 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) -- cgit 1.2.3-korg