예제 #1
0
파일: trac.py 프로젝트: PeterJCLaw/tools
    def __init__(self, user=None, password=None, server=None, port=None,
                 anon=False):
        """Initialise an SR trac object."""
        config = Config()

        if server is None:
            server = config["server"]

        if port is None:
            port = config["https_port"]

        self.server = server
        self.port = port

        rpc_settings = {"server": server, "port": port}

        if anon:
            rpc_url = "https://{server}:{port}/trac/rpc"
        else:
            rpc_url = "https://{user}:{password}@{server}:{port}/trac/login" \
                      "/rpc"

            user = config.get_user(user)
            rpc_settings["user"] = user
            rpc_settings["password"] = config.get_password(password, user=user)

        rpc_url = rpc_url.format(**rpc_settings)

        ServerProxy.__init__(self, rpc_url)

        if 'ticket.create' not in self.system.listMethods():
            raise WrongServer()
예제 #2
0
 def __init__(self, sock_path):
     # We can't pass funny characters in the host part of a URL, so we
     # encode the socket path in base16.
     ServerProxy.__init__(self,
                          'http://' +
                          base64.b16encode(sock_path.encode('utf-8')),
                          transport=UnixXmlRpcTransport(),
                          allow_none=1)
예제 #3
0
    def __init__(self,
                 user=None,
                 password=None,
                 server=None,
                 port=None,
                 anon=False):
        """Initialise an SR trac object."""
        config = Config()

        if server is None:
            server = config["server"]

        if port is None:
            port = config["https_port"]

        self.server = server
        self.port = port

        rpc_settings = {"server": server, "port": port}

        if anon:
            rpc_url = "https://{server}:{port}/trac/rpc"
        else:
            rpc_url = "https://{user}:{password}@{server}:{port}/trac/login" \
                      "/rpc"

            user = config.get_user(user)
            rpc_settings["user"] = user
            rpc_settings["password"] = config.get_password(password, user=user)

        rpc_url = rpc_url.format(**rpc_settings)

        ServerProxy.__init__(self, rpc_url)

        if 'ticket.create' not in self.system.listMethods():
            raise WrongServer()