def _run(self, **params): bugdirs = self._get_bugdirs() if params['bugdir']: bugdir = bugdirs[params['bugdir']] elif len(bugdirs) == 1: bugdir = bugdirs.values()[0] else: raise libbe.command.UserError('Ambiguous bugdir {}'.format( sorted(bugdirs.values()))) if params['setting'] == None: keys = bugdir.settings_properties keys.sort() for key in keys: print >> self.stdout, \ '%16s: %s' % (key, _value_string(bugdir, key)) return 0 if params['setting'] not in bugdir.settings_properties: msg = 'Invalid setting %s\n' % params['setting'] msg += 'Allowed settings:\n ' msg += '\n '.join(bugdir.settings_properties) raise libbe.command.UserError(msg) if params['value'] == None: print _value_string(bugdir, params['setting']) else: if params['value'] == 'none': params['value'] = EMPTY old_setting = bugdir.settings.get(params['setting']) attr = bugdir._setting_name_to_attr_name(params['setting']) setattr(bugdir, attr, params['value']) return 0
def _run(self, **params): bugdirs = self._get_bugdirs() if params['bugdir']: bugdir = bugdirs[params['bugdir']] elif len(bugdirs) == 1: bugdir = bugdirs.values()[0] else: raise libbe.command.UserError( 'Ambiguous bugdir {}'.format(sorted(bugdirs.values()))) if params['setting'] == None: keys = bugdir.settings_properties keys.sort() for key in keys: print >> self.stdout, \ '%16s: %s' % (key, _value_string(bugdir, key)) return 0 if params['setting'] not in bugdir.settings_properties: msg = 'Invalid setting %s\n' % params['setting'] msg += 'Allowed settings:\n ' msg += '\n '.join(bugdir.settings_properties) raise libbe.command.UserError(msg) if params['value'] == None: print _value_string(bugdir, params['setting']) else: if params['value'] == 'none': params['value'] = EMPTY old_setting = bugdir.settings.get(params['setting']) attr = bugdir._setting_name_to_attr_name(params['setting']) setattr(bugdir, attr, params['value']) return 0
def _value_string(bugdir, setting): val = bugdir.settings.get(setting, EMPTY) if val == EMPTY: default = getattr(bugdir, bugdir._setting_name_to_attr_name(setting)) if default not in [None, EMPTY]: val = 'None (%s)' % default else: val = None return str(val)