6 def add_common_args(parser):
7 parser.add_argument("--path",
8 help="the directory that the parsed data is written into")
9 parser.add_argument("--transport", default="http",
10 choices=["http", "https"],
11 help="transport for connections")
12 parser.add_argument("-i", "--ip", default="localhost",
13 help="OpenDaylight ip address")
14 parser.add_argument("-t", "--port", default="8181",
15 help="OpenDaylight restconf port, default: 8181")
16 parser.add_argument("-u", "--user", default="admin",
17 help="OpenDaylight restconf username, default: admin")
18 parser.add_argument("-w", "--pw", default="admin",
19 help="OpenDaylight restconf password, default: admin")
20 parser.add_argument("-p", "--pretty_print", action="store_true",
21 help="json dump with pretty_print")
24 def add_interface_parser(parsers):
25 parser = parsers.add_parser("interface")
26 add_common_args(parser)
27 parser.add_argument("--ifName",
28 help="interfaces-state:interface:name")
29 parser.set_defaults(func=analyze.analyze_interface)
31 parser = parsers.add_parser("inventory")
32 add_common_args(parser)
33 parser.add_argument("--ifName",
34 help="interfaces-state:interface:name")
35 parser.add_argument("--isConfig",
36 help="config or operational inventory")
37 parser.add_argument("--nodeId",
39 parser.set_defaults(func=analyze.analyze_inventory)
41 parser = parsers.add_parser("trunks")
42 add_common_args(parser)
43 parser.set_defaults(func=analyze.analyze_trunks)
50 def add_show_parser(parsers):
51 parser = parsers.add_parser("elan-instances")
52 add_common_args(parser)
53 parser.set_defaults(func=show.show_elan_instances)
55 parser = parsers.add_parser("flows")
56 add_common_args(parser)
57 parser.add_argument("--modules",
58 help="service module owning the flow")
59 parser.add_argument("flowtype", choices=["all", "duplicate", "elan", "learned", "stale"])
60 parser.add_argument("--metaOnly", action="store_true",
61 help="display flow meta info only")
62 parser.add_argument("--urls", action="store_true",
63 help="show flow urls")
64 parser.set_defaults(func=show.show_flows)
66 parser = parsers.add_parser("id-pools")
67 add_common_args(parser)
68 parser.set_defaults(func=show.show_idpools)
70 parser = parsers.add_parser("groups")
71 add_common_args(parser)
72 parser.set_defaults(func=show.show_groups)
74 parser = parsers.add_parser("stale-bindings")
75 add_common_args(parser)
76 # parser.set_defaults(func=show.show_stale_bindings)
77 parser.add_argument("--func2", default=show.show_stale_bindings, help=argparse.SUPPRESS)
78 parser.set_defaults(func=call_func)
80 parser = parsers.add_parser("tables")
81 add_common_args(parser)
82 parser.set_defaults(func=show.show_tables)
85 def add_parser(parsers):
86 parser = parsers.add_parser("analyze")
87 subparsers = parser.add_subparsers(dest="subcommand")
88 add_interface_parser(subparsers)
90 parser = parsers.add_parser("show")
91 subparsers = parser.add_subparsers(dest="showcommand")
92 add_show_parser(subparsers)