summaryrefslogtreecommitdiffstats
path: root/vstf/vstf/controller/env_build/env_collect.py
blob: 888f71c7a4bdb9d4e86c206b44988782fc2fa18b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from vstf.rpc_frame_work import rpc_producer


class EnvCollectApi(object):
    def __init__(self, rb_mq_server):
        """
        When use collect, a connection of rabbitmq is needed.
        """
        super(EnvCollectApi, self).__init__()
        if rb_mq_server is None:
            raise Exception("The connection of rabbitmq is None.")
        self.conn = rb_mq_server

    def collect_host_info(self, host):
        msg = self.conn.make_msg("collect_host_info")
        return self.conn.call(msg, host, timeout=2)

    def get_device_detail(self, host, nic_identity):
        msg = self.conn.make_msg("get_device_detail", identity=nic_identity)
        return self.conn.call(msg, host, timeout=2)

    def list_nic_devices(self, host):
        msg = self.conn.make_msg("list_nic_devices")
        return self.conn.call(msg, host, timeout=2)


if __name__ == "__main__":
    conn = rpc_producer.Server("192.168.188.10")
    c = EnvCollectApi(conn)
    print c.collect_host_info("local")