From e500ed27ad09ac6368d509b0556cc732d21aa3c7 Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Mon, 9 Dec 2013 15:19:02 +0200 Subject: [PATCH] create_project: Copy more meta data from source project Copy debuginfo, build, useforbuild and publish meta from source project when creating another project out of it. That makes setup of linked project more consistent with source project and prevent difference in package build statuses between source and target projects. Change-Id: I779f8574d368e58f5d6f4d37aee18b7ef57bf85b Signed-off-by: Ed Bartosh --- gitbuildsys/oscapi.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/gitbuildsys/oscapi.py b/gitbuildsys/oscapi.py index d31d202..11368a4 100644 --- a/gitbuildsys/oscapi.py +++ b/gitbuildsys/oscapi.py @@ -94,6 +94,19 @@ class OSC(object): repos[repo.name].append(repo.arch) return repos + def get_tags(self, project, tags): + """Get tags content from meta.""" + meta_xml = self.get_meta(project) + xml_root = ET.fromstringlist(meta_xml) + + result = '' + for tag in tags: + element = xml_root.find(tag) + if element: + result += ET.tostring(element) + + return result + def create_project(self, target, src=None, rewrite=False, description='', linkto='', linkedbuild=''): """ @@ -122,6 +135,9 @@ class OSC(object): # Collect source repos if src project exist if src: + # Copy debuginfo, build, useforbuild and publish meta + meta += self.get_tags(src, ['debuginfo', 'build', + 'useforbuild', 'publish']) # Copy repos to target repos = self.get_repos_of_project(src) for name in repos: -- 2.34.1