From: Markus Lehtonen <markus.lehtonen@linux.intel.com>
To: openembedded-core@lists.openembedded.org
Subject: [PATCH 13/19] oe-build-perf-test: new {tag_num} keyword for --commit-results-tag
Date: Wed, 24 Aug 2016 10:13:03 +0300 [thread overview]
Message-ID: <1472022789-13028-14-git-send-email-markus.lehtonen@linux.intel.com> (raw)
In-Reply-To: <1472022789-13028-1-git-send-email-markus.lehtonen@linux.intel.com>
This makes it possible to create numbered tags, where the "basename" of
the tag is the same and the only difference is an (automatically)
increasing index number. This is useful if you do multiple test runs on
the same commit. For example, using:
--commit-results-tag {tester_host}/{git_commit}/{tag_num}
would give you tags something like:
myhost/decb3119dffd3fd38b800bebc1e510f9217a152e/0
myhost/decb3119dffd3fd38b800bebc1e510f9217a152e/1
...
The default tag format is updated to use this new keyword in order to
prevent unintentional tag name clashes.
Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
---
meta/lib/oeqa/buildperf/base.py | 19 +++++++++++++++----
scripts/oe-build-perf-test | 2 +-
2 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/meta/lib/oeqa/buildperf/base.py b/meta/lib/oeqa/buildperf/base.py
index a3cd3f3..faa30c7 100644
--- a/meta/lib/oeqa/buildperf/base.py
+++ b/meta/lib/oeqa/buildperf/base.py
@@ -226,10 +226,21 @@ class BuildPerfTestResult(unittest.TextTestResult):
# Create (annotated) tag
if tag:
- # Replace keywords
- tag = tag.format(git_branch=self.git_branch,
- git_commit=self.git_commit,
- tester_host=self.hostname)
+ # Find tags matching the pattern
+ tag_keywords = dict(git_branch=self.git_branch,
+ git_commit=self.git_commit,
+ tester_host=self.hostname,
+ tag_num='[0-9]{1,5}')
+ tag_re = re.compile(tag.format(**tag_keywords) + '$')
+ tag_keywords['tag_num'] = 0
+ for existing_tag in repo.run_cmd('tag').splitlines():
+ if tag_re.match(existing_tag):
+ tag_keywords['tag_num'] += 1
+
+ tag = tag.format(**tag_keywords)
+ msg = "Test run #{} of {}:{}\n".format(tag_keywords['tag_num'],
+ self.git_branch,
+ self.git_commit)
repo.run_cmd(['tag', '-a', '-m', msg, tag, commit])
finally:
diff --git a/scripts/oe-build-perf-test b/scripts/oe-build-perf-test
index 1ed5bdb..cd27584 100755
--- a/scripts/oe-build-perf-test
+++ b/scripts/oe-build-perf-test
@@ -140,7 +140,7 @@ def parse_args(argv):
default="{git_branch}",
help="Commit results to branch BRANCH.")
parser.add_argument('--commit-results-tag', metavar='TAG',
- default="{git_branch}/{git_commit}",
+ default="{git_branch}/{git_commit}/{tag_num}",
help="Tag results commit with TAG.")
return parser.parse_args(argv)
--
2.6.6
next prev parent reply other threads:[~2016-08-24 7:13 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-24 7:12 [PATCH 00/19] oe-build-pef-test: support saving results in a Git repo Markus Lehtonen
2016-08-24 7:12 ` [PATCH 01/19] oe-build-perf-test: implement --run-tests option Markus Lehtonen
2016-08-24 7:12 ` [PATCH 02/19] oe-build-perf-test: use absolute paths in cmdline args Markus Lehtonen
2016-08-24 7:12 ` [PATCH 03/19] oeqa.utils.git: support git commands with updated env Markus Lehtonen
2016-08-24 7:12 ` [PATCH 04/19] oeqa.utils.git: introduce GitRepo.rev_parse() Markus Lehtonen
2016-08-24 7:12 ` [PATCH 05/19] oeqa.utils.git: implement GitRepo.get_current_branch() Markus Lehtonen
2016-08-24 7:12 ` [PATCH 06/19] oeqa.utils.git.GitRepo: new arg to require topdir Markus Lehtonen
2016-08-24 7:12 ` [PATCH 07/19] oeqa.buildperf: use term commit instead of revision Markus Lehtonen
2016-08-24 7:12 ` [PATCH 08/19] oe-build-perf-test: support committing results data to Git Markus Lehtonen
2016-08-24 7:12 ` [PATCH 09/19] oe-build-perf-test: implement --commit-results-branch Markus Lehtonen
2016-08-24 7:13 ` [PATCH 10/19] oeqa.utils.git: implement init() method Markus Lehtonen
2016-08-24 7:13 ` [PATCH 11/19] oe-build-perf-test: pre-check Git repo when using --commit-results Markus Lehtonen
2016-08-24 7:13 ` [PATCH 12/19] oe-build-perf-test: tag results committed to Git Markus Lehtonen
2016-08-24 7:13 ` Markus Lehtonen [this message]
2016-08-24 7:13 ` [PATCH 14/19] oeqa.buildperf: add git commit count to result data Markus Lehtonen
2016-08-24 7:13 ` [PATCH 15/19] oe-build-perf-test: add {git_commit_count} keyword for --commit-results-tag Markus Lehtonen
2016-08-24 7:13 ` [PATCH 16/19] build-perf-test-wrapper.sh: parse args with getopts Markus Lehtonen
2016-08-24 7:13 ` [PATCH 17/19] build-perf-test-wrapper.sh: allow saving results in Git Markus Lehtonen
2016-08-24 7:13 ` [PATCH 18/19] build-perf-test-wrapper.sh: make archive dir configurable Markus Lehtonen
2016-08-24 7:13 ` [PATCH 19/19] build-perf-test-wrapper.sh: make workdir configurable Markus Lehtonen
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=1472022789-13028-14-git-send-email-markus.lehtonen@linux.intel.com \
--to=markus.lehtonen@linux.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