import shutil
import urllib2
import json
+import cgi
import xml.etree.cElementTree as ElementTree
from gitbuildsys.errors import ObsError
repo_element.attrib.pop('linkedbuild')
self.set_meta(ElementTree.tostring(xml_root), project)
+
+ def create_sr(self, src_project, packages, tgt_project, message=''):
+ """Create submit request for the project."""
+ content = '<request><description>%s</description>' % \
+ cgi.escape(str(message))
+ for package in packages:
+ content += '<action type="submit">'
+ content += '<source project="%s" package="%s"/>' % \
+ (str(src_project), str(package))
+ content += '<target project="%s" package="%s" />' % \
+ (str(tgt_project), str(package))
+ content += '</action>'
+ content += '</request>\n'
+ url = core.makeurl(self.apiurl, ['request'], query='cmd=create')
+ reply = self.core_http(core.http_POST, url, data=content)
+ return ElementTree.parse(reply).getroot().get('id')
+
+ def set_sr_state(self, reqid, state, message='', force=False):
+ """Set SR state."""
+ return core.change_request_state(self.apiurl, reqid, state,
+ message=str(message), force=force)