def _get_scheduler_rpc(): """Returns the scheduler xmlrpc AuthicatingServerProxy object. """ username = '******' # We assume this user exists always. user = User.objects.get(username=username) rpc2_url = Worker.get_rpc2_url() try: token = AuthToken.objects.filter(user=user)[0] except IndexError: token = AuthToken.objects.create(user=user) token.save() parsed_server = urlparse.urlparse(rpc2_url) server = '{0}://{1}:{2}@{3}'.format(parsed_server.scheme, username, token.secret, parsed_server.hostname) if parsed_server.port: server += ':' + str(parsed_server.port) server += parsed_server.path auth_backend = MemoryAuthBackend([(username, rpc2_url, token.secret)]) server = AuthenticatingServerProxy(server, auth_backend=auth_backend) server = server.scheduler return server