* repa list: Fixed formatting of output for repa list
* repa group: Fix check for common packages
* repa list: Fix build status reporting
+ * repa group: disable publishing when aggregating packages
Release notes for repa 0.1.1
* common.py: Introduced get_prerelease_projects API
* Implement repa diff
* Correct man page for accept and reject subcommands
+ * group: disable publishing when aggregating packages
- -- Ed Bartosh <eduard.bartosh@intel.com> Sat, 29 Mar 2014 21:19:01 +0200
+ -- Ed Bartosh <eduard.bartosh@intel.com> Wed, 21 May 2014 17:05:10 +0200
repa (0.1.1) unstable; urgency=low
-* Tue May 20 2014 Ed Bartosh <eduard.bartosh@intel.com> 0.2
+* Tue May 21 2014 Ed Bartosh <eduard.bartosh@intel.com> 0.2
- Implement --processes options for repa list (Fixes: #1762)
- obs/get_projects: retry OBS operations
- Reduce amount of information in repa list output
- Implement repa diff
- Correct man page for accept and reject subcommands
- Convert repa.changes into rpm format
+- group: disable publishing when aggregating packages
* Tue Mar 18 2014 Ed Bartosh <eduard.bartosh@intel.com> 0.1.1
- Fixed crash when rejecting broken package
def aggregate(obs, bresults, gproject):
"""Aggregate packages into group project."""
aggregated = set()
+ obs.set_global_flag('publish', 'disable', gproject)
for subm, prj, results in bresults:
for res in results.itervalues():
for pkg, state in res['packages']:
obs.aggregate_package(prj, pkg, gproject, pkg)
aggregated.add(pkg)
+ obs.set_global_flag('publish', 'enable', gproject)
+
return aggregated
for sr in root.findall('request'):
yield sr.get('id'), sr.find('state').get('name'), \
sr.find('description').text
+
+ def set_global_flag(self, flag, value, prj, pkg=None):
+ """
+ Set global flag in meta
+ Supported flag: publish,build,useforbuild,debuginfo
+ Supported values: enable,disable
+ """
+ supported_flags = ('publish', 'build', 'useforbuild', 'debuginfo')
+ if flag not in supported_flags:
+ raise RepaException("flag %s is not supported. "
+ "supported flags: %s" % \
+ (flag, ', '.join(supported_flags)))
+ supported_vals = ('enable', 'disable')
+ if value not in supported_vals:
+ raise RepaException("value %s is not supported. "
+ "supported values: %s" % \
+ (value, ', '.join(supported_vals)))
+ meta = self.get_meta(prj, pkg)
+ root = ET.fromstring(meta)
+ elem = root.find(flag)
+ if elem is None:
+ elem = ET.SubElement(root, flag)
+ elem.clear()
+ ET.SubElement(elem, value)
+ self.set_meta(ET.tostring(root), prj, pkg)