summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYongqin Liu <yongqin.liu@linaro.org>2020-02-18 21:20:35 +0800
committerYongqin Liu <yongqin.liu@linaro.org>2020-02-18 21:20:35 +0800
commit0a46d41f5568d4ef6a9606a514bc6e83146bfe33 (patch)
tree8cffedaa540bb41bc4f0b546a77a15c104a7bab3
parentde69a97b4a872828e5aa45771a6528b2b42001ae (diff)
lkft: fix the ci trigger and ci build not found problem
as the qa-report project name might be not the same as the part in the full_name Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>
-rw-r--r--lkft/lkft_config.py22
-rw-r--r--lkft/templates/lkft-projects.html1
-rw-r--r--lkft/views.py8
3 files changed, 16 insertions, 15 deletions
diff --git a/lkft/lkft_config.py b/lkft/lkft_config.py
index 7b4dd92..037a9b8 100644
--- a/lkft/lkft_config.py
+++ b/lkft/lkft_config.py
@@ -111,31 +111,31 @@ citrigger_lkft_rcs = {
}
-def get_ci_trigger_info(lkft_p_full_name=""):
+def get_ci_trigger_info(project=None):
+ if not project.get('full_name'):
+ return (None, None, None)
+
group_project_names = lkft_p_full_name.split('/')
group_name = group_project_names[0]
- lkft_pname = group_project_names[1]
+ lkft_pname = project.get('name')
citrigger_info = citrigger_lkft
if group_name == "android-lkft-rc":
citrigger_info = citrigger_lkft_rcs
return (group_name, lkft_pname, citrigger_info)
-def find_trigger_and_build(lkft_p_full_name=""):
- if not lkft_p_full_name:
- return (None, None)
-
- (group_name, lkft_pname, citrigger_info) = get_ci_trigger_info(lkft_p_full_name=lkft_p_full_name)
+def find_trigger_and_build(project):
+ (group_name, lkft_pname, citrigger_info) = get_ci_trigger_info(project=project)
for trigger_name, lkft_pnames in citrigger_info.items():
if lkft_pname in lkft_pnames.keys():
return (trigger_name, lkft_pnames.get(lkft_pname))
return (None, None)
-def find_citrigger(lkft_p_full_name=""):
- (trigger_name, build_name) = find_trigger_and_build(lkft_p_full_name)
+def find_citrigger(project=None):
+ (trigger_name, build_name) = find_trigger_and_build(project)
return trigger_name
-def find_cibuild(lkft_p_full_name=""):
- (trigger_name, build_name) = find_trigger_and_build(lkft_p_full_name)
+def find_cibuild(project=None):
+ (trigger_name, build_name) = find_trigger_and_build(project)
return build_name
def get_hardware_from_pname(pname=None, env=''):
diff --git a/lkft/templates/lkft-projects.html b/lkft/templates/lkft-projects.html
index bb3138a..c8e307d 100644
--- a/lkft/templates/lkft-projects.html
+++ b/lkft/templates/lkft-projects.html
@@ -59,6 +59,7 @@
{% endif %}
{% if last_ci_build.build_status == 'FAILURE' %}
<a href="{{last_ci_build.ci_build_project_url}}">{{ last_ci_build.kernel_version}}</a>&nbsp;&nbsp; <p style="background-color: red">{{ last_ci_build.build_status}}</p>
+ <p>Started at {{ last_ci_build.start_timestamp|date:'M. d, Y, H:i'}}, &nbsp;{{ last_ci_build.start_timestamp|timesince}} ago</p>
{% endif %}
{% if last_ci_build.build_status == 'ABORTED' %}
<a href="{{last_ci_build.ci_build_project_url}}">{{ last_ci_build.kernel_version}}</a>&nbsp;&nbsp; <p style="background-color: gray">{{ last_ci_build.build_status}}</p>
diff --git a/lkft/views.py b/lkft/views.py
index 4d0a7d7..94e9430 100644
--- a/lkft/views.py
+++ b/lkft/views.py
@@ -251,8 +251,8 @@ def extract(result_zip_path, failed_testcases_all={}, metadata={}):
}
-def get_last_trigger_build(lkft_p_full_name=''):
- ci_trigger_name = find_citrigger(lkft_p_full_name=lkft_p_full_name)
+def get_last_trigger_build(project=None):
+ ci_trigger_name = find_citrigger(project=project)
if not ci_trigger_name:
return None
return jenkins_api.get_last_build(cijob_name=ci_trigger_name)
@@ -399,7 +399,7 @@ def get_project_info(project):
project['last_build'] = last_build
logger.info("%s: Start to get ci trigger build information for project", project.get('name'))
- last_trigger_build = get_last_trigger_build(project.get('full_name'))
+ last_trigger_build = get_last_trigger_build(project)
if last_trigger_build:
last_trigger_url = last_trigger_build.get('url')
last_trigger_build = jenkins_api.get_build_details_with_full_url(build_url=last_trigger_url)
@@ -408,7 +408,7 @@ def get_project_info(project):
project['last_trigger_build'] = last_trigger_build
logger.info("%s: Start to get ci build information for project", project.get('name'))
- ci_build_project_name = find_cibuild(lkft_p_full_name=project.get('full_name'))
+ ci_build_project_name = find_cibuild(project)
if ci_build_project_name:
ci_build_project = jenkins_api.get_build_details_with_job_url(ci_build_project_name)