From 53fbf80b24276566aff352fb3bbdd15e7a16720e Mon Sep 17 00:00:00 2001 From: hyokeun Date: Tue, 20 Mar 2018 17:08:15 +0900 Subject: [PATCH] GBS - Set default system mail Aborting jobs configuration Mark build fail reason Adding system build info for image creation Change-Id: Ic9ad2b625cd200d7d8bf383c8e0c3d743da371cb --- job_buildmonitor_gbs.py | 2 +- job_gbs_build_dispatcher.py | 7 ++++--- job_gbsdbbuild_one_repoarch_build.py | 8 ++++---- job_gbsfullbuild_image_creator.py | 6 +++++- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/job_buildmonitor_gbs.py b/job_buildmonitor_gbs.py index 17f8a61..53606b6 100644 --- a/job_buildmonitor_gbs.py +++ b/job_buildmonitor_gbs.py @@ -96,7 +96,7 @@ def fn_queued(gbs_inst, content): main_project = content.get('main_project') source_snapshot = content.get('source_snapshot') gbs_type = content.get('gbs_type') - submitter = content.get('submitter') + submitter = content.get('submitter', 'tizen.buildbuild@samsung.com') packages = content.get('packages') # set_queue() should be done by Dashboard itself when user initiate it. diff --git a/job_gbs_build_dispatcher.py b/job_gbs_build_dispatcher.py index 363c452..34b36b9 100755 --- a/job_gbs_build_dispatcher.py +++ b/job_gbs_build_dispatcher.py @@ -32,7 +32,7 @@ def abort_pending_builds(tag): return False for _queue in pending_build_queue: if 'task' not in _queue or 'name' not in _queue.get('task') \ - or _queue.get('task').get('name') not in os.getenv('ABORTING_JOBS').split(): + or _queue.get('task').get('name') not in os.getenv('ABORTING_JOBS').split(','): continue job = _queue.get('task').get('name') queue_id = _queue.get('id') @@ -42,7 +42,7 @@ def abort_pending_builds(tag): def abort_running_builds(tag): - for job in os.getenv('ABORTING_JOBS').split(): + for job in os.getenv('ABORTING_JOBS').split(','): ret_dict = get_running_builds_with_parameter(job) for build in ret_dict["builds"]: build_id = build.get('number') @@ -55,7 +55,8 @@ def abort_running_builds(tag): def abort_build(contents): print 'ABORT %s' % contents.get("tag") - aborting_job_list = os.getenv('ABORTING_JOBS').split() + aborting_job_list = os.getenv('ABORTING_JOBS').split(',') + print aborting_job_list tag = contents.get("tag") abort_pending_builds(tag); diff --git a/job_gbsdbbuild_one_repoarch_build.py b/job_gbsdbbuild_one_repoarch_build.py index 98a571d..0f3c762 100644 --- a/job_gbsdbbuild_one_repoarch_build.py +++ b/job_gbsdbbuild_one_repoarch_build.py @@ -110,10 +110,10 @@ def trigger_bm_for_gbs_build_package(gbsbuild_tag,bm_pkg_info,bm_repo,bm_arch): def update_db_for_gbsbuild_target(repository,architecture,bm_start_datetime,\ - gbs_build_status,gbsbuild_tag): + gbs_build_status,gbsbuild_tag, status_reason=None): gbs_update_data = {"tag" : gbsbuild_tag, "mode" : "build_finished", - "reason" : {"repo":repository,"arch":architecture,"status":gbs_build_status}} + "reason" : {"repo":repository,"arch":architecture,"status":gbs_build_status, "comment":status_reason}} gbs_update_dashboard(gbs_update_data,via='direct_call') bm_end_datetime = datetime.datetime.now() @@ -184,7 +184,7 @@ def main(): if repo_init_sync_status == 'F': if buildmonitor_enabled: update_db_for_gbsbuild_target(repository,architecture,bm_start_datetime,\ - repo_init_sync_status,gbsbuild_dic['gbsbuild_tag']) + repo_init_sync_status,gbsbuild_dic['gbsbuild_tag'], status_reason=repo_init_sync_status_reason) return 0 (gbs_build_status,gbs_build_status_reason) = gbsbuild_sub._do_repo_arch_gbs_fullbuild(repository,architecture) @@ -195,7 +195,7 @@ def main(): if buildmonitor_enabled: update_db_for_gbsbuild_target(repository,architecture,bm_start_datetime,\ - gbs_build_status,gbsbuild_dic['gbsbuild_tag']) + gbs_build_status,gbsbuild_dic['gbsbuild_tag'], status_reason = gbs_build_status_reason) bm_pkg_info=gbsbuild_sub.get_rpm_info_from_gbs_build_log(live_out_dir,repository,architecture) print "bm_pkg_info: %s" %bm_pkg_info diff --git a/job_gbsfullbuild_image_creator.py b/job_gbsfullbuild_image_creator.py index a7b30c5..5410f6f 100755 --- a/job_gbsfullbuild_image_creator.py +++ b/job_gbsfullbuild_image_creator.py @@ -46,9 +46,13 @@ def find_my_ip(): return '0.0.0.0' def gbs_update_dashboard(raw_data, via='trigger', trigger_name=''): - raw_data["_timestamp"] = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + + raw_data["_timestamp"] = datetime.datetime.utcnow().strftime("%Y-%m-%d %H:%M:%S") raw_data["_worker"] = {"node_name": os.getenv('NODE_NAME'), + "build_job": os.getenv('JOB_NAME'), + "build_number": os.getenv('BUILD_ID'), "ip": find_my_ip()} + if via == 'trigger': trigger_next("DASHBOARD_UPDATE_%s" % trigger_name, raw_data) else: -- 2.7.4