self.apiurl, False)
self.core_http(core.http_PUT, url, data=''.join(config))
- def copy_package_meta(self, obs_source_project, package, \
- obs_target_project):
- """
- Copy xml metadata of target package to
- the meta of source package
- """
- meta_xml = self.get_meta(obs_target_project, package)
- xml_root = ElementTree.fromstringlist(meta_xml)
- project_name = xml_root.attrib.get('project')
- if project_name != obs_source_project:
- xml_root.attrib['project'] = obs_source_project
- self.set_meta(ElementTree.tostring(xml_root), \
- obs_source_project, package)
-
def get_package_meta(self, project, package):
"""
get_package_meta(project, package) -> string
# set project config
build.set_project_config(project, config)
-def set_aggregate_package_meta(build, obs_source_prj, obs_target_prj):
- """Set package metadata that include 'aggregate' from obs_source_prj.
- Keep the metadata of aggregate packages are the same as
- the obs_target_prj project
- """
- for package in build.get_package_list(obs_target_prj):
- if 'aggregate' in package:
- # get real project name in metadata of the package
- realprj = build.get_package_real_project_name(obs_source_prj, \
- package)
- # If real project name is not equal obs_source_prj,
- # should branch the package from obs_target_prj to
- # obs_source_prj, and copy the package metadata
- # of obs_target_prj to obs_source_prj
- if realprj != obs_source_prj:
- print "branch package %s from %s" % (package, realprj)
- build.branch_pkg(realprj, package, \
- target_project = obs_source_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
# 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)
#create the 'link' package that relate the original package
create_related_packages(build, obs_target_prj, obs_project, package)