def C_Start(self, ip, port): # init odl info
        self.ip = ip
        self.port = port
        self.username = raw_input( 'username : '******'password : ' )

        # odl_api login
        self.token = odl_api.login(
                                    self.ip,
                                    self.port,
                                    self.username,
                                    self.password
                                   )

        if self.token == None:
            return False

        self.controller_db = odl_api.controller_db_init(
                                                        self.ip, 
                                                        self.port, 
                                                        self.token
                                                       )
        self.init_call_back()
        self.cmdloop()
Esempio n. 2
0
        
        utils.config_json_write(file_path, controller_db)
        self.prompt = "Switch(" + input_alias + ") # "

    def do_flow(self, cmd_input):
        args = cmd_input.split()
        if len(args) == 0:
            print "please input option"
            return None
        else:
            flow_id = args[0]
            flow_console = S_ODLFlow.S_ODLFlow()
            flow_console.F_Start(self.ip, self.port, self.token, self.dpid, flow_id)

    def complete_show(self, text, line, begidx, endidx):
        if not text:
            completions = self.show_option.keys()
        else:
            completions = [x for x in self.show_option.keys()
                            if x.startswith(text)
                        ]
        return completions


if __name__ == "__main__":
    debug = True
    token = odl_api.login('10.0.2.102','8181','admin','admin')
    console = S_ODLSwitch()
    console.S_Start("10.0.2.102","8181",token,"openflow:515")

Esempio n. 3
0
        flow_id = self.input_match.get("id")
        if table_id == None or flow_id == None:
            print "please input table_id, flow_id"
            return None
        
        if self.json_body == None:
            print "please apply match"
            return None
        response = odl_api.add_flow_send(self.ip, self.port, self.token, self.dpid, table_id, flow_id, self.json_body)
        if response:
            print "send flow"

    def complete_match(self, text, line, begidx, endidx):
        if not text:
            completions = self.MATCH_REGEX.keys()
        else:
            completions = [match for match in self.MATCH_REGEX.keys()
                            if match.startswith(text)
                        ]
        return completions

        

if __name__ == "__main__":
    ip = "10.0.2.102"
    port = "8181"
    token = odl_api.login(ip, port, "admin", "admin")
    test_console = S_ODLFlow()
    test_console.debug = True
    test_console.F_Start(ip, port, token, "openflow:515", "testtest")