From: hyokeun Date: Thu, 28 Dec 2017 04:58:15 +0000 (+0900) Subject: Generate branch to obs project mapping file for dashboard X-Git-Tag: submit/trunk/20190927.012743~185^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0a34a46705a0350c6777e602689bd6fe90da362b;p=services%2Fjenkins-scripts.git Generate branch to obs project mapping file for dashboard Change-Id: I3b8e5d4c81bd8a555eca9ce14fca004b88b9d625 --- diff --git a/common/mapping.py b/common/mapping.py index 2a23763..e2d6fe2 100644 --- a/common/mapping.py +++ b/common/mapping.py @@ -85,7 +85,7 @@ class Mapping(object): if brch.submission == 'N': continue else: - brch_dict = {} + brch_dict = {'Branch_name': brch.__getitem__('name')} for key in key_list: brch_dict[key] = brch.__getitem__(key) or None mapping.append(self.__encode_to_ascii(brch_dict)) diff --git a/job_update_git_obs_mapping_for_dashboard.py b/job_update_git_obs_mapping_for_dashboard.py index 9f46ffc..21307d5 100755 --- a/job_update_git_obs_mapping_for_dashboard.py +++ b/job_update_git_obs_mapping_for_dashboard.py @@ -126,6 +126,27 @@ def generate_abs_git_mapping(prjdir, target_dir): with open(target_filename, "w") as f: f.write(json.dumps(git_obs_mapping_abs_info)) +#Handle BRANCH-OBS project mapping +def generate_branch_obs_mapping(prjdir, target_dir): + mapping_list = git_obs_map_full_list() + + list_all = {} + for item in mapping_list: + if 'OBS_project' not in item or 'Branch_name' not in item: + continue + _branch = item['Branch_name'] + _obs_prj = item['OBS_project'] + if _obs_prj not in list_all: + list_all[_obs_prj] = [] + for _br in _branch.split(','): + if _br not in list_all[_obs_prj]: + list_all[_obs_prj].append(_br) + + target_filename = os.path.join(target_dir, "obs_project_branch_mapping.json") + + with open(target_filename, "w") as f: + f.write(json.dumps(list_all)) + ########################################################### # test code #target_dir = ".dashboard/git_obs_mapping" @@ -150,6 +171,7 @@ target_dir = ".dashboard/git_obs_mapping" generate_mapping(prjdir, target_dir) generate_fork_git_mapping(prjdir, target_dir) generate_abs_git_mapping(prjdir, target_dir) +generate_branch_obs_mapping(prjdir, target_dir) sync_dest = os.path.join(os.getenv("IMG_SYNC_DEST_BASE"), "snapshots", target_dir) # sync to the download server.