From 58b4c87c227729134d69b41182ebe02bfedda789 Mon Sep 17 00:00:00 2001 From: Xu Chang Date: Tue, 13 Jan 2015 17:31:14 +0800 Subject: [PATCH] Copy maintainer to their prerelease projects Fixes: #2297 Change-Id: Ibd006df0061a95f376d1130be4c18cf29bcceccb Signed-off-by: Xu Chang --- job_submit.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/job_submit.py b/job_submit.py index c937e36..e93bf37 100755 --- a/job_submit.py +++ b/job_submit.py @@ -27,8 +27,10 @@ import json import base64 import datetime import re +import xml.etree.cElementTree as ElementTree from xml.sax.saxutils import escape +from osc import core from gitbuildsys.errors import ObsError from common import mapping @@ -111,6 +113,18 @@ def set_aggregate_package_meta(build, obs_source_prj, obs_target_prj): # copy package metadata of obs_source_prj to realprj build.copy_package_meta(obs_source_prj, package, realprj) +def copy_person_project_meta(build, obs_target_prj, obs_project): + """copy the maintainer list from obs_target_prj meta to corresponding + prerelease project + """ + src_meta_xml = build.get_meta(obs_target_prj) + src_xml_root = ElementTree.fromstringlist(src_meta_xml) + # get peron list from obs_target_prj meta + for person in src_xml_root.findall('person'): + # add person to prerelease project + core.addPerson(build.apiurl, obs_project, None, person.get('userid'), + person.get('role')) + def create_project(git_url, git_project, git_tag, git_revision, build, obs_target_prj, obs_project, submitter, package): """Create prerelease OBS project and upload sources for the build.""" @@ -153,6 +167,11 @@ def create_project(git_url, git_project, git_tag, git_revision, build, raise LocalError(err) build.link_project(obs_project, src=obs_target_prj, linktype="localdep") + + # copy the maintainer list from obs_target_prj meta to corresponding + # prerelease project + copy_person_project_meta(build, obs_target_prj, obs_project) + #change the aggregate package metadata of obs_project set_aggregate_package_meta(build, obs_project, obs_target_prj) -- 2.7.4