def get_sys(x): systems = System.all(identity.current.user). \ filter(System.groups.contains(x)). \ filter(System.status != SystemStatus.removed).all() if len(systems): return make_link('systems?group_id=%s' % x.group_id, u'System count: %s' % len(systems)) else: return 'System count: 0'
def query(cls): for system in System.all(identity.current.user): for exclude in (ExcludeOSMajor.query.join('system') .yield_per(10000) .filter(System.id == system.id)): yield CSV_Exclude(exclude) for exclude in (ExcludeOSVersion.query.join('system') .yield_per(10000) .filter(System.id == system.id)): yield CSV_Exclude(exclude)
def query(cls): for system in System.all(identity.current.user): for key_int in (Key_Value_Int.query.join('system') .yield_per(10000) .filter(System.id == system.id)): yield CSV_KeyValue(key_int) for key_string in (Key_Value_String.query.join('system') .yield_per(10000) .filter(System.id == system.id)): yield CSV_KeyValue(key_string)
def systems(self,group_id=None,*args,**kw): try: group = Group.by_id(group_id) except NoResultFound: log.exception('Group id %s is not a valid group id' % group_id) flash(_(u'Need a valid group to search on')) redirect('../groups/mine') systems = System.all(identity.current.user).filter(System.groups.contains(group)) title = 'Systems in Group %s' % group.group_name from bkr.server.controllers import Root return Root()._systems(systems,title, group_id = group_id,**kw)
def get_group_systems(self, group_id=None, *args, **kw): try: group = Group.by_id(group_id) except DatabaseLookupError: log.exception('Group id %s is not a valid group id' % group_id) response.status = 403 return ['Invalid Group Id'] systems = System.all(identity.current.user).filter(System.groups.contains(group)). \ filter(System.status != SystemStatus.removed) return [(system.id, system.fqdn) for system in systems]
def reserve(self, action='.', *args, **kw): from bkr.server.controllers import Root default_columns = ('System/Name', 'System/Reserved', 'System/User', 'System/Pools', 'System/LoanedTo',) return Root()._systems(systems=System.all(identity.current.user) .join('open_reservation') .options(contains_eager(System.open_reservation)), title=u'Reserve Report', default_result_columns=default_columns, *args, **kw)
def systems(self, group_id=None, *args, **kw): try: group = Group.by_id(group_id) except DatabaseLookupError: log.exception('Group id %s is not a valid group id' % group_id) flash(_(u'Need a valid group to search on')) redirect('../groups/mine') systems = System.all(identity.current.user). \ filter(System.groups.contains(group)). \ filter(System.status != SystemStatus.removed) title = 'Systems in Group %s' % group.group_name from bkr.server.controllers import Root return Root()._systems(systems, title, group_id=group_id, **kw)
def reserve(self, action='.', *args, **kw): from bkr.server.controllers import Root default_columns = ( 'System/Name', 'System/Reserved', 'System/User', 'System/Pools', 'System/LoanedTo', ) return Root()._systems(systems=System.all( identity.current.user).join('open_reservation').options( contains_eager(System.open_reservation)), title=u'Reserve Report', default_result_columns=default_columns, *args, **kw)
def reserve(self, action='.', *args, **kw): searchvalue = None reserves = System.all(identity.current.user).join('open_reservation')\ .options(contains_eager(System.open_reservation)) reserves_return = self._reserves(reserves, **kw) search_options = {} if reserves_return: if 'reserves_found' in reserves_return: reserves = reserves_return['reserves_found'] if 'searchvalue' in reserves_return: searchvalue = reserves_return['searchvalue'] if 'simplesearch' in reserves_return: search_options['simplesearch'] = reserves_return['simplesearch'] search_bar = SearchBar(name='reservesearch', label=_(u'Reserve Search'), table = search_utility.SystemReserve.search.create_search_table(), complete_data=search_utility.SystemReserve.search.create_complete_search_table(), search_controller=url("./get_search_options_reserve"), ) reservations = [system.open_reservation for system in reserves] reserve_grid = myPaginateDataGrid(fields=[ widgets.PaginateDataGrid.Column(name='system.fqdn', getter=lambda x: make_link(url = '/view/%s' % x.system.fqdn, text = x.system), title=u'System', options=dict(sortable=True)), widgets.PaginateDataGrid.Column(name='start_time', getter=lambda x: x.start_time, title=u'Reserved Since', options=dict(sortable=True, datetime=True)), widgets.PaginateDataGrid.Column(name='user', getter=lambda x: x.user, title=u'Current User', options=dict(sortable=True)), ]) return dict(title=u"Reserve Report", grid = reserve_grid, search_bar = search_bar, options = search_options, action=action, searchvalue = searchvalue, object_count=len(reservations), list=reservations)
def reserve(self, action='.', *args, **kw): searchvalue = None reserves = System.all(identity.current.user).join('open_reservation')\ .options(contains_eager(System.open_reservation)) reserves_return = self._reserves(reserves, **kw) search_options = {} if reserves_return: if 'reserves_found' in reserves_return: reserves = reserves_return['reserves_found'] if 'searchvalue' in reserves_return: searchvalue = reserves_return['searchvalue'] if 'simplesearch' in reserves_return: search_options['simplesearch'] = reserves_return['simplesearch'] search_bar = SearchBar(name='reservesearch', label=_(u'Reserve Search'), table = search_utility.SystemReserve.search.create_complete_search_table(), search_controller=url("./get_search_options_reserve"), ) reservations = [system.open_reservation for system in reserves] reserve_grid = myPaginateDataGrid(fields=[ widgets.PaginateDataGrid.Column(name='system.fqdn', getter=lambda x: make_link(url = '/view/%s' % x.system.fqdn, text = x.system), title=u'System', options=dict(sortable=True)), widgets.PaginateDataGrid.Column(name='start_time', getter=lambda x: x.start_time, title=u'Reserved Since', options=dict(sortable=True, datetime=True)), widgets.PaginateDataGrid.Column(name='user', getter=lambda x: x.user, title=u'Current User', options=dict(sortable=True)), ]) return dict(title=u"Reserve Report", grid = reserve_grid, search_bar = search_bar, options = search_options, action=action, searchvalue = searchvalue, list=reservations)
def query(cls): for system in System.all(identity.current.user): for group in system.groups: yield CSV_GroupSystem(system, group)
def query(cls): for system in System.all(identity.current.user): for key_int in system.key_values_int: yield CSV_KeyValue(key_int) for key_string in system.key_values_string: yield CSV_KeyValue(key_string)
def query(cls): for system in System.all(identity.current.user): for install in system.provisions.itervalues(): yield CSV_Install(install)
def query(cls): for system in System.all(identity.current.user): for exclude in system.excluded_osmajor: yield CSV_Exclude(exclude) for exclude in system.excluded_osversion: yield CSV_Exclude(exclude)
def query(cls): for system in System.all(identity.current.user).join(System.labinfo): yield CSV_LabInfo(system.labinfo)
def query(cls): query = System.all(identity.current.user)\ .filter(System.can_view_power(identity.current.user))\ .join(System.power) for system in query: yield CSV_Power(system.power)
def query(cls): for system in System.all(identity.current.user): yield CSV_System_id(system)
def query(cls): for system in System.all(identity.current.user): for pool in system.pools: yield CSV_SystemPool(system, pool)