From 8d7cc2d992a7768c7b03bcfac06e422a0a9cf507 Mon Sep 17 00:00:00 2001 From: Martin Styk Date: Sat, 22 Aug 2026 22:01:03 +0200 Subject: [PATCH] refactor: register groups XML-RPC namespace for python 3 Signed-off-by: Martin Styk --- Server/bkr/server/rpc/group.py | 16 ++++++++-------- Server/bkr/server/wsgi_py3.py | 1 + 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/Server/bkr/server/rpc/group.py b/Server/bkr/server/rpc/group.py index 7053dc110..502fa7215 100644 --- a/Server/bkr/server/rpc/group.py +++ b/Server/bkr/server/rpc/group.py @@ -3,13 +3,12 @@ # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. -from turbogears import expose from bkr.server import config, mail, identity from bkr.server.database import session from sqlalchemy.orm.exc import NoResultFound -from bkr.server.xmlrpccontroller import RPCRoot from bkr.server.bexceptions import BX from bkr.server.model import Group, GroupMembershipType, User +from bkr.server.rpc import expose, register class GroupOwnerModificationForbidden(BX): @@ -19,7 +18,8 @@ def __init__(self, message): self._message = message self.args = [message] -class Groups(RPCRoot): +@register('groups') +class Groups(object): # For XMLRPC methods in this class. exposed = True @@ -53,8 +53,8 @@ def revoke_owner(self, group_id=None, id=None, **kw): return str(identity.current.user.user_id) #XML-RPC interface + @expose @identity.require(identity.not_anonymous()) - @expose(format='json') def revoke_ownership(self, group, kw): """ Revoke group ownership from an existing group member @@ -96,8 +96,8 @@ def grant_owner(self, group_id=None, id=None, **kw): return '' #XML-RPC interface + @expose @identity.require(identity.not_anonymous()) - @expose(format='json') def grant_ownership(self, group, kw): """ Grant group ownership to an existing group member @@ -115,8 +115,8 @@ def grant_ownership(self, group, kw): member_name=kw['member_name']) # XML-RPC method for creating a group + @expose @identity.require(identity.not_anonymous()) - @expose(format='json') def create(self, kw): """ Creates a new group. @@ -169,8 +169,8 @@ def create(self, kw): raise BX(u'Group already exists: %s.' % group_name) # XML-RPC method for modifying a group + @expose @identity.require(identity.not_anonymous()) - @expose(format='json') def modify(self, group_name, kw): """ Modifies an existing group. You must be an owner of a group to modify any details. @@ -281,7 +281,7 @@ def modify(self, group_name, kw): return ['1'] # XML-RPC method for listing a group's members - @expose(format='json') + @expose def members(self, group_name): """ List the members of an existing group. diff --git a/Server/bkr/server/wsgi_py3.py b/Server/bkr/server/wsgi_py3.py index b7bb2510c..65557a57b 100644 --- a/Server/bkr/server/wsgi_py3.py +++ b/Server/bkr/server/wsgi_py3.py @@ -49,6 +49,7 @@ import bkr.server.rpc.authentication import bkr.server.rpc.distrotrees import bkr.server.rpc.distros +import bkr.server.rpc.group import bkr.server.rpc.labcontroller import bkr.server.rpc.prefs import bkr.server.rpc.taskactions