Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Yeoh Ee Peng <ee.peng.yeoh@intel.com>,
	openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 3/4] testimage.bbclass: write testresult to json files
Date: Mon, 22 Oct 2018 09:38:09 +0100	[thread overview]
Message-ID: <7d241d4a795b1bfbfd15da327420a4d98f0d9223.camel@linuxfoundation.org> (raw)
In-Reply-To: <1540191264-12332-3-git-send-email-ee.peng.yeoh@intel.com>

On Mon, 2018-10-22 at 14:54 +0800, Yeoh Ee Peng wrote:
> As part of the solution to replace Testopia to store testresult,
> OEQA testimage need to output testresult into json files, where
> these json testresult files will be stored into git repository
> by the future test-case-management tools.
> 
> To configure multiple instances of bitbake to write json testresult
> to a single testresult file, user will define the variable
> "OEQA_JSON_RESULT_COMMON_DIR" with the common directory for writing
> json testresult.
> 
> Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
> ---
>  meta/classes/testimage.bbclass | 34 ++++++++++++++++++++++++++++++++--
>  1 file changed, 32 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
> index 2642a72..112ba71 100644
> --- a/meta/classes/testimage.bbclass
> +++ b/meta/classes/testimage.bbclass
> @@ -2,7 +2,7 @@
>  #
>  # Released under the MIT license (see COPYING.MIT)
>  
> -
> +inherit metadata_scm
>  # testimage.bbclass enables testing of qemu images using python unittests.
>  # Most of the tests are commands run on target image over ssh.
>  # To use it add testimage to global inherit and call your target image with -c testimage
> @@ -141,6 +141,33 @@ 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_configuration(d, test_type, pid, machine):
> +    import platform
> +    bb_core_dir = d.getVar("BBFILE_PATTERN_core=")
> +    return {'TEST_TYPE': test_type,
> +            'BRANCH': base_get_metadata_git_branch(bb_core_dir, None).strip(),
> +            'COMMIT': base_get_metadata_git_revision(bb_core_dir, None),

We need to record all the revisions/branches that are being used. Could
we just inject the contents of metadata['layers'] directly into the
json file here?

> +            'PROCESS_ID': pid,
> +            'MACHINE': machine,
> +            'IMAGE_BASENAME': d.getVar("IMAGE_BASENAME"),
> +            'IMAGE_PKGTYPE': d.getVar("IMAGE_PKGTYPE"),
> +            'HOST_DISTRO': platform.linux_distribution()}
> +
> +def _get_json_result_dir(d, configuration):
> +    json_result_dir = os.path.join(d.getVar("WORKDIR"),
> +                                   'temp',
> +                                   'json_testresults-%s' % configuration['PROCESS_ID'],
> +                                   configuration['TEST_TYPE'],
> +                                   configuration['MACHINE'],
> +                                   configuration['IMAGE_BASENAME'])
> +    oeqa_json_result_common_dir = d.getVar("OEQA_JSON_RESULT_COMMON_DIR")
> +    if oeqa_json_result_common_dir:
> +        json_result_dir = oeqa_json_result_common_dir

Do we need both codepaths here or can we just place things in
OEQA_JSON_RESULT_COMMON_DIR unconditionally here?

(we could rename it to OEQA_JSON_RESULT_DIR?)

Cheers,

Richard



  reply	other threads:[~2018-10-22  8:38 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-22  6:54 [PATCH 1/4] oeqa/core/runner: write testresult to json files Yeoh Ee Peng
2018-10-22  6:54 ` [PATCH 2/4] oeqa/selftest/context: " Yeoh Ee Peng
2018-10-22  6:54 ` [PATCH 3/4] testimage.bbclass: " Yeoh Ee Peng
2018-10-22  8:38   ` Richard Purdie [this message]
2018-10-22  9:08     ` Yeoh, Ee Peng
2018-10-22  6:54 ` [PATCH 4/4] testsdk.bbclass: " Yeoh Ee Peng
2018-10-22  8:31 ` [PATCH 1/4] oeqa/core/runner: " Richard Purdie
2018-10-22  8:59   ` Yeoh, Ee Peng
2018-10-22  9:34     ` richard.purdie
2018-10-22  9:47       ` Yeoh, Ee Peng
2018-10-22 10:53       ` Yeoh, Ee Peng
  -- strict thread matches above, loose matches on Subject: below --
2018-10-23  5:57 Yeoh Ee Peng
2018-10-23  5:57 ` [PATCH 3/4] testimage.bbclass: " Yeoh Ee Peng
2018-10-22 10:34 [PATCH 1/4] oeqa/core/runner: " Yeoh Ee Peng
2018-10-22 10:34 ` [PATCH 3/4] testimage.bbclass: " Yeoh Ee Peng
2018-10-12  6:33 [PATCH 1/4] oeqa/core/runner: " Yeoh Ee Peng
2018-10-12  6:33 ` [PATCH 3/4] testimage.bbclass: " Yeoh Ee Peng
2018-10-12 15:10   ` Richard Purdie
2018-10-02  9:22 [PATCH 1/4] oeqa/runner: " Yeoh Ee Peng
2018-10-02  9:22 ` [PATCH 3/4] testimage.bbclass: " Yeoh Ee Peng

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7d241d4a795b1bfbfd15da327420a4d98f0d9223.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=ee.peng.yeoh@intel.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox