return mapping
- def get_mapping_list(self, obs_project, staging_project):
+ def get_mapping_list(self, obs_project, staging_project, ignore_config=False):
"""Get all list"""
mapping = []
- if self.mapping_obj.configure:
+ if ignore_config == False and self.mapping_obj.configure:
# if configure.enable is false then return []
if self.mapping_obj.configure.enable == 'false':
return mapping
# get mappings v2
for file in mapping_v2_file_lists:
mymapping_v2 = MappingV2(file)
- obs_prjs.extend(mymapping_v2.get_mapping_list(obs_project, staging_project))
+ obs_prjs.extend(mymapping_v2.get_mapping_list(obs_project, staging_project, ignore_config=True))
# remove overlapped items
#obs_prjs = remove_overlaps(obs_prjs)
git_obs_mapping_info = {}
#proj_branch_info = gerrit.ls_projects()
- cmd = "ssh -p %s %s gerrit ls-projects %s > proj_list" % (os.getenv('GERRIT_SSHPORT', 29418),
- os.getenv('GERRIT_HOSTNAME', "review.tizen.org"),
- arg)
+ cmd = "ssh -p %s %s@%s gerrit ls-projects %s > proj_list" % (os.getenv('GERRIT_SSHPORT', 29418),
+ os.getenv('GERRIT_USERNAME'),
+ os.getenv('GERRIT_HOSTNAME', "review.tizen.org"),
+ arg)
subprocess.check_output(cmd, shell=True)
with open("proj_list", "r") as f:
for l in f:
with open(target_filename, "w") as f:
f.write(json.dumps(git_obs_mapping_fork_info))
+#Handle ABS git
+def generate_abs_git_mapping(prjdir, target_dir):
+ mapping = git_obs_map_full_list()
+ git_obs_mapping_abs_info = {}
+ for item in mapping:
+ # We only care about abs tag
+ if ('OBS_project' not in item) or (not item.get('OBS_project')) \
+ or ('Project_name' not in item) or (not item.get('Project_name')) \
+ or ('OBS_staging_project' not in item) or (not item.get('OBS_staging_project')) \
+ or (item.get('OBS_staging_project') != 'abs'):
+ continue
+ git_repo = item.get('Project_name')
+ package_name = item.get('OBS_package', None)
+ if not package_name:
+ package_name = os.path.basename(git_repo)
+ obs_project = item.get('OBS_project')
+ if item.get('Project_name') not in git_obs_mapping_abs_info:
+ git_obs_mapping_abs_info[git_repo] = {obs_project: package_name}
+ else:
+ git_obs_mapping_abs_info[git_repo][obs_project] = package_name
+
+ target_filename = os.path.join(target_dir, "mapping_abs.json")
+
+ with open(target_filename, "w") as f:
+ f.write(json.dumps(git_obs_mapping_abs_info))
+
###########################################################
# test code
#target_dir = ".dashboard/git_obs_mapping"
GERRIT_SILENT_MODE = int(os.getenv('GERRIT_SILENT_MODE'))
events = get_gerrit_event()
-print(events)
prjdir = os.path.join(WORKSPACE, "git-obs-mapping")
-
-clone_gitproject(GERRIT_PROJECT, prjdir)
+clone_gitproject(GERRIT_PROJECT, prjdir, git_cache_dir="nonexist")
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)
sync_dest = os.path.join(os.getenv("IMG_SYNC_DEST_BASE"), "snapshots", target_dir)
# sync to the download server.