Example #1
0
    def get_conn_id(self):
        if self.conn_url == 'local':
            return '127.0.0.1'

        assert self.conn_url.startswith("ssh://")
        creds = parse_ssh_uri(self.conn_url[6:])
        return "{0.host}:{0.port}".format(creds)
Example #2
0
    def get_user(self):
        if self.conn_url == 'local':
            return getpass.getuser()

        assert self.conn_url.startswith("ssh://")
        creds = parse_ssh_uri(self.conn_url[6:])
        return creds.user
Example #3
0
    def get_user(self):
        if self.conn_url == 'local':
            return getpass.getuser()

        assert self.conn_url.startswith("ssh://")
        creds = parse_ssh_uri(self.conn_url[6:])
        return creds.user
Example #4
0
    def get_conn_id(self):
        if self.conn_url == 'local':
            return '127.0.0.1'

        assert self.conn_url.startswith("ssh://")
        creds = parse_ssh_uri(self.conn_url[6:])
        return "{0.host}:{0.port}".format(creds)
def conn_ctx(uri, *args):
    creds = ssh_utils.parse_ssh_uri(CONNECT_URI)
    node_info = node_interfaces.NodeInfo(creds, set())
    conn = node.connect(node_info, *args)
    try:
        yield conn
    finally:
        conn.disconnect()
def rpc_conn_ctx(uri, log_level=None):
    creds = ssh_utils.parse_ssh_uri(uri)
    rpc_code, modules = node.get_rpc_server_code()

    ssh_conn = node.connect(node_interfaces.NodeInfo(creds, set()))
    try:
        rpc_conn = node.setup_rpc(ssh_conn,
                                  rpc_code,
                                  plugins=modules,
                                  log_level=log_level)
        try:
            yield rpc_conn
        finally:
            rpc_conn.conn.server.stop()
            rpc_conn.disconnect()
    finally:
        ssh_conn.disconnect()
def test_ssh_url_parser():
    default_user = "******"

    creds = [("test", ssh_utils.ConnCreds("test", default_user, port=22)),
             ("test:13", ssh_utils.ConnCreds("test", default_user, port=13)),
             ("test::xxx.key",
              ssh_utils.ConnCreds("test",
                                  default_user,
                                  port=22,
                                  key_file="xxx.key")),
             ("test:123:xxx.key",
              ssh_utils.ConnCreds("test",
                                  default_user,
                                  port=123,
                                  key_file="xxx.key")),
             ("user@test", ssh_utils.ConnCreds("test", "user", port=22)),
             ("user@test:13", ssh_utils.ConnCreds("test", "user", port=13)),
             ("user@test::xxx.key",
              ssh_utils.ConnCreds("test", "user", port=22,
                                  key_file="xxx.key")),
             ("user@test:123:xxx.key",
              ssh_utils.ConnCreds("test", "user", port=123,
                                  key_file="xxx.key")),
             ("user:passwd@test",
              ssh_utils.ConnCreds("test", "user", port=22, passwd="passwd")),
             ("user:passwd:@test",
              ssh_utils.ConnCreds("test", "user", port=22, passwd="passwd:")),
             ("user:passwd:@test:123",
              ssh_utils.ConnCreds("test", "user", port=123, passwd="passwd:"))]

    for uri, expected in creds:
        with patch('getpass.getuser', lambda: default_user):
            parsed = ssh_utils.parse_ssh_uri(uri)

        assert parsed.user == expected.user, uri
        assert parsed.addr.port == expected.addr.port, uri
        assert parsed.addr.host == expected.addr.host, uri
        assert parsed.key_file == expected.key_file, uri
        assert parsed.passwd == expected.passwd, uri
Example #8
0
    def get_ip(self):
        if self.conn_url == 'local':
            return '127.0.0.1'

        assert self.conn_url.startswith("ssh://")
        return parse_ssh_uri(self.conn_url[6:]).host
Example #9
0
    def get_ip(self):
        if self.conn_url == 'local':
            return '127.0.0.1'

        assert self.conn_url.startswith("ssh://")
        return parse_ssh_uri(self.conn_url[6:]).host