summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/buildperf/base.py
diff options
context:
space:
mode:
authorMarkus Lehtonen <markus.lehtonen@linux.intel.com>2016-08-16 15:56:56 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-08-25 23:03:47 +0100
commit06b2c75c7e56d520a57302e4cc9a622137a4ca74 (patch)
treebd4287263f3c31c4741dc5bf99a32bed05cf3e19 /meta/lib/oeqa/buildperf/base.py
parent28333b3a2d17a9d623751a6c4daa92beadb8fdb6 (diff)
downloadpoky-06b2c75c7e56d520a57302e4cc9a622137a4ca74.tar.gz
oe-build-perf-test: tag results committed to Git
Create a Git tag when committing results to a Git repository. This patch also implements --commit-results-tag command line option for controlling the tag name. The value is a format string where the following fields may be used: - {git_branch} - target branch being tested - {git_commit} - target commit being tested - {tester_host} - hostname of the tester machine Tagging can be disabled by giving an empty string to --commit-results-tag. The option has no effect if --commit-results is not defined. (From OE-Core rev: 60059ff5b81d6ba9ba344161d51d1290559ac2df) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/buildperf/base.py')
-rw-r--r--meta/lib/oeqa/buildperf/base.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/meta/lib/oeqa/buildperf/base.py b/meta/lib/oeqa/buildperf/base.py
index 119e6edf18..a3cd3f3155 100644
--- a/meta/lib/oeqa/buildperf/base.py
+++ b/meta/lib/oeqa/buildperf/base.py
@@ -188,7 +188,7 @@ class BuildPerfTestResult(unittest.TextTestResult):
188 fobj.write(','.join(values) + '\n') 188 fobj.write(','.join(values) + '\n')
189 189
190 190
191 def git_commit_results(self, repo_path, branch=None): 191 def git_commit_results(self, repo_path, branch=None, tag=None):
192 """Commit results into a Git repository""" 192 """Commit results into a Git repository"""
193 repo = GitRepo(repo_path, is_topdir=True) 193 repo = GitRepo(repo_path, is_topdir=True)
194 if not branch: 194 if not branch:
@@ -223,6 +223,15 @@ class BuildPerfTestResult(unittest.TextTestResult):
223 if repo.get_current_branch() == branch: 223 if repo.get_current_branch() == branch:
224 log.info("Updating %s HEAD to latest commit", repo_path) 224 log.info("Updating %s HEAD to latest commit", repo_path)
225 repo.run_cmd('reset --hard') 225 repo.run_cmd('reset --hard')
226
227 # Create (annotated) tag
228 if tag:
229 # Replace keywords
230 tag = tag.format(git_branch=self.git_branch,
231 git_commit=self.git_commit,
232 tester_host=self.hostname)
233 repo.run_cmd(['tag', '-a', '-m', msg, tag, commit])
234
226 finally: 235 finally:
227 if os.path.exists(tmp_index): 236 if os.path.exists(tmp_index):
228 os.unlink(tmp_index) 237 os.unlink(tmp_index)