Move files around to fit pypi better 34/71434/2
authorSam Hague <shague@redhat.com>
Thu, 26 Apr 2018 16:37:33 +0000 (12:37 -0400)
committerSam Hague <shague@redhat.com>
Fri, 27 Apr 2018 01:04:51 +0000 (21:04 -0400)
JIRA: NETVIRT-1232
Change-Id: I0632fbcaa83c20f8ab5fd2f2ccadfe97b389d600
Signed-off-by: Sam Hague <shague@redhat.com>
63 files changed:
.gitignore
resources/tools/odltools/CHANGES.rst [new file with mode: 0644]
resources/tools/odltools/LICENSE.txt
resources/tools/odltools/MANIFEST.in
resources/tools/odltools/README.md [deleted file]
resources/tools/odltools/README.rst [new file with mode: 0644]
resources/tools/odltools/odltools/__init__.py
resources/tools/odltools/odltools/__main__.py
resources/tools/odltools/odltools/cli.py
resources/tools/odltools/odltools/csit/__init__.py [moved from resources/tools/odltools/csit/__init__.py with 100% similarity]
resources/tools/odltools/odltools/csit/cli.py [moved from resources/tools/odltools/csit/cli.py with 100% similarity]
resources/tools/odltools/odltools/csit/robotfiles.py [moved from resources/tools/odltools/csit/robotfiles.py with 97% similarity]
resources/tools/odltools/odltools/csit/tests/__init__.py [moved from resources/tools/odltools/mdsal/__init__.py with 100% similarity]
resources/tools/odltools/odltools/csit/tests/test_robotfiles.py [moved from resources/tools/odltools/csit/tests/test_robotfiles.py with 91% similarity]
resources/tools/odltools/odltools/mdsal/__init__.py [moved from resources/tools/odltools/netvirt/__init__.py with 100% similarity]
resources/tools/odltools/odltools/mdsal/cli.py [moved from resources/tools/odltools/mdsal/cli.py with 94% similarity]
resources/tools/odltools/odltools/mdsal/cmd.py [moved from resources/tools/odltools/mdsal/models.py with 96% similarity]
resources/tools/odltools/odltools/mdsal/model.py [moved from resources/tools/odltools/mdsal/model.py with 99% similarity]
resources/tools/odltools/odltools/mdsal/models/__init__.py [moved from resources/tools/odltools/ovs/__init__.py with 100% similarity]
resources/tools/odltools/odltools/mdsal/models/elan.py [moved from resources/tools/odltools/mdsal/elan.py with 96% similarity]
resources/tools/odltools/odltools/mdsal/models/id_manager.py [moved from resources/tools/odltools/mdsal/id_manager.py with 92% similarity]
resources/tools/odltools/odltools/mdsal/models/ietf_interfaces.py [moved from resources/tools/odltools/mdsal/ietf_interfaces.py with 97% similarity]
resources/tools/odltools/odltools/mdsal/models/interface_service_bindings.py [moved from resources/tools/odltools/mdsal/interface_service_bindings.py with 96% similarity]
resources/tools/odltools/odltools/mdsal/models/itm_state.py [moved from resources/tools/odltools/mdsal/itm_state.py with 98% similarity]
resources/tools/odltools/odltools/mdsal/models/l3vpn.py [moved from resources/tools/odltools/mdsal/l3vpn.py with 93% similarity]
resources/tools/odltools/odltools/mdsal/models/mip.py [moved from resources/tools/odltools/mdsal/mip.py with 93% similarity]
resources/tools/odltools/odltools/mdsal/models/network_topology.py [moved from resources/tools/odltools/mdsal/network_topology.py with 92% similarity]
resources/tools/odltools/odltools/mdsal/models/neutron.py [moved from resources/tools/odltools/mdsal/neutron.py with 95% similarity]
resources/tools/odltools/odltools/mdsal/models/odl_fib.py [moved from resources/tools/odltools/mdsal/odl_fib.py with 95% similarity]
resources/tools/odltools/odltools/mdsal/models/odl_interface_meta.py [moved from resources/tools/odltools/mdsal/odl_interface_meta.py with 96% similarity]
resources/tools/odltools/odltools/mdsal/models/odl_l3vpn.py [moved from resources/tools/odltools/mdsal/odl_l3vpn.py with 96% similarity]
resources/tools/odltools/odltools/mdsal/models/opendaylight_inventory.py [moved from resources/tools/odltools/mdsal/opendaylight_inventory.py with 92% similarity]
resources/tools/odltools/odltools/mdsal/request.py [moved from resources/tools/odltools/mdsal/request.py with 100% similarity]
resources/tools/odltools/odltools/mdsal/tests/__init__.py [new file with mode: 0644]
resources/tools/odltools/odltools/mdsal/tests/resources/config_ietf-interfaces:interfaces.json [moved from resources/tools/odltools/mdsal/tests/resources/config_ietf-interfaces:interfaces.json with 100% similarity]
resources/tools/odltools/odltools/mdsal/tests/resources/config_itm-state:dpn-endpoints.json [moved from resources/tools/odltools/mdsal/tests/resources/config_itm-state:dpn-endpoints.json with 100% similarity]
resources/tools/odltools/odltools/mdsal/tests/resources/config_network-topology:network-topology_topology_ovsdb:1.json [moved from resources/tools/odltools/mdsal/tests/resources/config_network-topology:network-topology_topology_ovsdb:1.json with 100% similarity]
resources/tools/odltools/odltools/mdsal/tests/test_ietf_interfaces.py [moved from resources/tools/odltools/mdsal/tests/test_ietf_interfaces.py with 83% similarity]
resources/tools/odltools/odltools/mdsal/tests/test_itm_state.py [moved from resources/tools/odltools/mdsal/tests/test_itm_state.py with 93% similarity]
resources/tools/odltools/odltools/mdsal/tests/test_models.py [moved from resources/tools/odltools/mdsal/tests/test_models.py with 96% similarity]
resources/tools/odltools/odltools/mdsal/tests/test_network_topology.py [moved from resources/tools/odltools/mdsal/tests/test_network_topology.py with 80% similarity]
resources/tools/odltools/odltools/mdsal/tests/test_request.py [moved from resources/tools/odltools/mdsal/tests/test_request.py with 91% similarity]
resources/tools/odltools/odltools/netvirt/__init__.py [new file with mode: 0644]
resources/tools/odltools/odltools/netvirt/cli.py [moved from resources/tools/odltools/netvirt/cli.py with 100% similarity]
resources/tools/odltools/odltools/netvirt/constants.py [moved from resources/tools/odltools/netvirt/constants.py with 100% similarity]
resources/tools/odltools/odltools/netvirt/ds_analyze.py [moved from resources/tools/odltools/netvirt/ds_analyze.py with 98% similarity]
resources/tools/odltools/odltools/netvirt/flow_parser.py [moved from resources/tools/odltools/netvirt/flow_parser.py with 100% similarity]
resources/tools/odltools/odltools/netvirt/netvirt_utils.py [moved from resources/tools/odltools/netvirt/netvirt_utils.py with 100% similarity]
resources/tools/odltools/odltools/ovs/__init__.py [new file with mode: 0644]
resources/tools/odltools/odltools/ovs/flows.py [moved from resources/tools/odltools/ovs/flows.py with 98% similarity]
resources/tools/odltools/odltools/ovs/request.py [moved from resources/tools/odltools/ovs/request.py with 100% similarity]
resources/tools/odltools/odltools/ovs/tables.py [moved from resources/tools/odltools/ovs/tables.py with 100% similarity]
resources/tools/odltools/odltools/ovs/tests/__init__.py [new file with mode: 0644]
resources/tools/odltools/odltools/ovs/tests/resources/flow_dumps.1.txt [moved from resources/tools/odltools/ovs/tests/resources/flow_dumps.1.txt with 100% similarity]
resources/tools/odltools/odltools/ovs/tests/resources/flow_dumps.2.txt [moved from resources/tools/odltools/ovs/tests/resources/flow_dumps.2.txt with 100% similarity]
resources/tools/odltools/odltools/ovs/tests/resources/flow_dumps.3.txt [moved from resources/tools/odltools/ovs/tests/resources/flow_dumps.3.txt with 100% similarity]
resources/tools/odltools/odltools/ovs/tests/test_flows.py [moved from resources/tools/odltools/ovs/tests/test_flows.py with 95% similarity]
resources/tools/odltools/odltools/ovs/tests/test_request.py [moved from resources/tools/odltools/ovs/tests/test_request.py with 94% similarity]
resources/tools/odltools/odltools/ovs/tests/test_tables.py [moved from resources/tools/odltools/ovs/tests/test_tables.py with 89% similarity]
resources/tools/odltools/odltools/tests/test_cli.py
resources/tools/odltools/requirements.txt [new file with mode: 0644]
resources/tools/odltools/setup.cfg
resources/tools/odltools/setup.py

index 25f75ebff4d296b9eb3f3001fef4f7e82a2b116f..114a6c4f780bc0a135073302140e5f86ea52d96e 100644 (file)
@@ -2,6 +2,7 @@
 **/target
 bin/
 dist
+**egg-info
 **/logs
 products
 repository
@@ -36,4 +37,4 @@ maven-metadata-local.xml
 .recommenders
 /.gitignore
 .fbExcludeFilterFile
-xtend-gen
\ No newline at end of file
+xtend-gen
diff --git a/resources/tools/odltools/CHANGES.rst b/resources/tools/odltools/CHANGES.rst
new file mode 100644 (file)
index 0000000..8d2db19
--- /dev/null
@@ -0,0 +1,3 @@
+v0.1.0
+------
+* Initial release.
\ No newline at end of file
index 84f95136e41944912c1cc8f58e64454d8ce08020..034d6ac40f2e99c8d218fd0f504e8775b07e990a 100644 (file)
@@ -2,4 +2,4 @@ Copyright (c) 2018 Red Hat Inc. and others. All rights reserved.
 
 This program and the accompanying materials are made available under the
 terms of the Eclipse Public License v1.0 which accompanies this distribution,
-and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
\ No newline at end of file
+and is available at http://www.eclipse.org/legal/epl-v10.html
\ No newline at end of file
index af3b4d05b465af7a53c78f4b878757f4252dcd62..2040f90eaf0ece3744caba48a416dbc58986ee75 100644 (file)
@@ -1,2 +1,3 @@
-include *.md
-include LICENSE.txt
\ No newline at end of file
+include CHANGES.rst
+include LICENSE.txt
+include requirements.txt
\ No newline at end of file
diff --git a/resources/tools/odltools/README.md b/resources/tools/odltools/README.md
deleted file mode 100644 (file)
index 48d1138..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-odltools
-========
-
-Tools and scripts used with OpenDaylight and OpenStack.
\ No newline at end of file
diff --git a/resources/tools/odltools/README.rst b/resources/tools/odltools/README.rst
new file mode 100644 (file)
index 0000000..233e249
--- /dev/null
@@ -0,0 +1,33 @@
+========
+odltools
+========
+A tool to troubleshoot the NetVirt OpenDaylight OpenStack integration.
+
+The tool can be used to get mdsal model dumps, openvswitch flow dumps
+and extracting dumps from CSIT output.xml files.
+
+*****
+Usage
+*****
+::
+
+  usage: python -m odltools [-h] [-v] [-V] {csit,model,analyze} ...
+
+  OpenDaylight Troubleshooting Tools
+
+  optional arguments:
+    -h, --help            show this help message and exit
+    -v, --verbose         verbosity (-v, -vv)
+    -V, --version         show program's version number and exit
+
+  subcommands:
+    Command Tool
+
+    {csit,model,analyze}
+
+************
+Installation
+************
+::
+
+  pip install odltools
index b794fd409a5e3b3b65ad76a43d6a01a318877640..df9144c549004a8808bf5fb861828762673393d8 100644 (file)
@@ -1 +1 @@
-__version__ = '0.1.0'
+__version__ = '0.1.1'
index 9952c7a28584b1c1c583ec77f24f48f0ac5d0119..02c337c30b2997bb9eced28ab09790c9b12f6fa8 100644 (file)
@@ -2,6 +2,9 @@ import cli
 import logg
 
 
-if __name__ == "__main__":
+def main():
     logg.Logger()
     cli.main()
+
+if __name__ == "__main__":
+    main()
index b3ed821fb723465d4d2eac4294522f89e466d09c..e0743b0b077faa7cda9d62df8434dbe96e380e5b 100644 (file)
@@ -1,7 +1,8 @@
 import argparse
-import csit.cli
+
 import mdsal.cli
 import netvirt.cli
+import odltools.csit.cli
 
 __version__ = "0.1"
 
@@ -13,9 +14,9 @@ def create_parser():
     parser.add_argument("-V", "--version", action="version",
                         version="%(prog)s (version {version})".format(version=__version__))
     subparsers = parser.add_subparsers(dest="command", description="Command Tool")
-    csit.cli.add_parser(subparsers)
-    mdsal.cli.add_parser(subparsers)
-    netvirt.cli.add_parser(subparsers)
+    odltools.csit.cli.add_parser(subparsers)
+    odltools.mdsal.cli.add_parser(subparsers)
+    odltools.netvirt.cli.add_parser(subparsers)
 
     return parser
 
similarity index 97%
rename from resources/tools/odltools/csit/robotfiles.py
rename to resources/tools/odltools/odltools/csit/robotfiles.py
index 337c04cb1555741c92d6c7d3bea4e984542e416d..1570df0c1a6f5d29a782efcd3f5dc3d45288460e 100644 (file)
@@ -1,10 +1,11 @@
 import logging
-import os
-import re
 import xml.etree.cElementTree as ET
 from subprocess import Popen
-from ovs import flows
 
+import os
+import re
+
+from odltools.ovs import flows
 
 logger = logging.getLogger("csit.robotfiles")
 
@@ -25,12 +26,14 @@ class RobotFiles:
         self.re_normalize_text = re.compile(r"( \n)|(\[A\[C.*)")
         # uri=restconf/config/interface-service-bindings:service-bindings, headers=None json=None</msg>
         self.re_uri = re.compile(r"uri=(?P<uri>.*),")
+        logger.info("RobotFiles created")
 
-    def gunzip_output_file(self):
+    def gunzip(self):
         infile = self.datafilepath
         basename = os.path.splitext(os.path.basename(self.datafilepath))[0]
         self.datafilepath = "{}/{}".format(self.outdir, basename)
         Popen("gunzip -cfk {} > {}".format(infile, self.datafilepath), shell=True).wait()
+        logger.info("gunzip -cfk %s > %s", infile, self.datafilepath)
 
     def mkdir(self, path):
         try:
@@ -41,6 +44,7 @@ class RobotFiles:
 
     def mk_outdir(self):
         self.mkdir(self.outdir)
+        logger.info("mk_outdir: %s created", self.outdir)
 
     def read_chunks(self, fp):
         while True:
@@ -266,7 +270,7 @@ def run(args):
     robotfile.print_config()
     robotfile.mk_outdir()
     if args.gunzip:
-        robotfile.gunzip_output_file()
+        robotfile.gunzip()
     robotfile.print_config()
     robotfile.parse_xml_data_file()
     robotfile.write_pdata()
similarity index 91%
rename from resources/tools/odltools/csit/tests/test_robotfiles.py
rename to resources/tools/odltools/odltools/csit/tests/test_robotfiles.py
index bdba34539550067588250f6024b30edd7bbe8d5a..4d3ff05a425851478038a32abb509bb465894601 100644 (file)
@@ -1,7 +1,8 @@
 import os
 import unittest
-from csit.robotfiles import RobotFiles
+
 from odltools import logg
+from odltools.csit.robotfiles import RobotFiles
 
 
 # Requirements
@@ -9,7 +10,7 @@ from odltools import logg
 # - running tests will create job dir, unzip, parse and format output
 
 class TestRobotFiles(unittest.TestCase):
-    DATAPATH = "/tmp/output_01_l2.xml.gz"
+    DATAPATH = "/tmp/output_02_l3.xml.gz"
     OUTPATH = "/tmp/robotjob"
 
     def setUp(self):
@@ -23,14 +24,14 @@ class TestRobotFiles(unittest.TestCase):
     def test_gunzip_xml_data_file(self):
         self.robotfile = RobotFiles(self.DATAPATH, self.OUTPATH)
         self.robotfile.mk_outdir()
-        self.robotfile.gunzip_output_file()
+        self.robotfile.gunzip()
         self.assertTrue(os.path.isfile(self.robotfile.datafilepath))
 
     def test_parse_xml_data_file(self):
         self.robotfile = RobotFiles(self.DATAPATH, self.OUTPATH)
         self.robotfile.print_config()
         self.robotfile.mk_outdir()
-        self.robotfile.gunzip_output_file()
+        self.robotfile.gunzip()
         self.robotfile.parse_xml_data_file()
 
         print "tests: {}".format(len(self.robotfile.pdata))
similarity index 94%
rename from resources/tools/odltools/mdsal/cli.py
rename to resources/tools/odltools/odltools/mdsal/cli.py
index dcbe6a374b355775f99ea4c0a1ef522f4829cd12..493d0395434843ed5dc57b601dce4a6f51350324 100644 (file)
@@ -1,4 +1,4 @@
-import models
+import cmd
 
 
 def add_dump_parser(parsers):
@@ -15,7 +15,7 @@ def add_dump_parser(parsers):
                         help="OpenDaylight restconf username, default: admin")
     parser.add_argument("-w", "--pw", default="admin",
                         help="OpenDaylight restconf password, default: admin")
-    parser.set_defaults(func=models.run_dump)
+    parser.set_defaults(func=cmd.run_dump)
 
 
 def add_parser(parsers):
similarity index 96%
rename from resources/tools/odltools/mdsal/models.py
rename to resources/tools/odltools/odltools/mdsal/cmd.py
index c36b21cff4fd7f162584d9de7daaba749967e668..41b3acd6a84b78dd2dcd254fa2b8c16e294f1ee7 100644 (file)
@@ -1,19 +1,7 @@
 import request
-from mdsal.model import Model
-from mdsal import elan
-from mdsal import id_manager
-from mdsal import ietf_interfaces
-from mdsal import interface_service_bindings
-from mdsal import itm_state
-from mdsal import l3vpn
-from mdsal import mip
-from mdsal import network_topology
-from mdsal import neutron
-from mdsal import odl_fib
-from mdsal import odl_interface_meta
-from mdsal import odl_l3vpn
-from mdsal import opendaylight_inventory
-
+from model import Model
+from odltools.mdsal.models import opendaylight_inventory, network_topology, itm_state, elan, id_manager, \
+    ietf_interfaces, interface_service_bindings, l3vpn, mip, neutron, odl_fib, odl_interface_meta, odl_l3vpn
 
 DSM_FILE = 0
 DSM_DSTYPE = 1
similarity index 99%
rename from resources/tools/odltools/mdsal/model.py
rename to resources/tools/odltools/odltools/mdsal/model.py
index 562211b7b5ac0bcd203171a58a1ddb578685b294..de76712707ef56561b93108eb500ef248c3fb684 100644 (file)
@@ -1,4 +1,5 @@
 import json
+
 import request
 
 
similarity index 96%
rename from resources/tools/odltools/mdsal/elan.py
rename to resources/tools/odltools/odltools/mdsal/models/elan.py
index e0343b7662a70ec5fd913d1604faf9caa40e960e..0452fe4684fedb5d08193d0210b1ae52a03e41e5 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "elan"
similarity index 92%
rename from resources/tools/odltools/mdsal/id_manager.py
rename to resources/tools/odltools/odltools/mdsal/models/id_manager.py
index 8eb3c391b6dc02832ee1c91e3c5ad8dfce1d169b..9bbb5336137d583bfe9ca633ce1822c6dbde4fb7 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "id-manager"
similarity index 97%
rename from resources/tools/odltools/mdsal/ietf_interfaces.py
rename to resources/tools/odltools/odltools/mdsal/models/ietf_interfaces.py
index f6b08d0dbb8f252cbf2cc3be0b64f3a0285fb966..9671a7e393a4684ee52a4b59bd996169d90c116e 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "ietf-interfaces"
similarity index 96%
rename from resources/tools/odltools/mdsal/interface_service_bindings.py
rename to resources/tools/odltools/odltools/mdsal/models/interface_service_bindings.py
index c2b1478893babab57ce40035e867ee1b544083ec..ad3101d1c9ae9b0956dd8efe9ee798712eae491f 100644 (file)
@@ -1,5 +1,5 @@
 import collections
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "interface-service-bindings"
similarity index 98%
rename from resources/tools/odltools/mdsal/itm_state.py
rename to resources/tools/odltools/odltools/mdsal/models/itm_state.py
index 3ee9cdccfc02b97a6cdba757a37c6efa5b8dcafe..8ff241b1d47eb0f043115a06376c00955e499985 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "itm-state"
similarity index 93%
rename from resources/tools/odltools/mdsal/l3vpn.py
rename to resources/tools/odltools/odltools/mdsal/models/l3vpn.py
index afdc262834c3028223e55b89074be5c78771372c..4178e06f3147e450247243f3e2d37ebfe9543320 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "l3vpn"
similarity index 93%
rename from resources/tools/odltools/mdsal/mip.py
rename to resources/tools/odltools/odltools/mdsal/models/mip.py
index adccea13cab66c79aa88c612fca79e118f13a4ec..7bd6d69ffc5f8775afecfd510ee0c055b3fb1007 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "mip"
similarity index 92%
rename from resources/tools/odltools/mdsal/network_topology.py
rename to resources/tools/odltools/odltools/mdsal/models/network_topology.py
index 0da5bd9926568dd8afe98100b2ab7616e2ad809a..d91e151edadc5928080b3ddef5eeda850d7edbb5 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "network-topology"
@@ -29,7 +29,7 @@ class NetworkTopology(Model):
         return topology[self.NODE]
 
     def get_nodes_by_tid_and_key(self, tid="ovsdb:1", key='node-id'):
-        nodes = self.get_nodes_by_tid_and_key(tid, key)
+        nodes = self.get_nodes_by_tid(tid)
         d = {}
         for node in nodes:
             d[node[key]] = node
similarity index 95%
rename from resources/tools/odltools/mdsal/neutron.py
rename to resources/tools/odltools/odltools/mdsal/models/neutron.py
index 883925b757da92fcfe8fc6d88b862be85cc40152..204ea51851d3dcd611dd8398e72bfd64c57dfe53 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "neutron"
similarity index 95%
rename from resources/tools/odltools/mdsal/odl_fib.py
rename to resources/tools/odltools/odltools/mdsal/models/odl_fib.py
index 2643893f81c0f15277902b4880d8cc9e6deee340..2d73ee5679ad4067b4da10c8e7f7f38e3b469c05 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "odl-fib"
similarity index 96%
rename from resources/tools/odltools/mdsal/odl_interface_meta.py
rename to resources/tools/odltools/odltools/mdsal/models/odl_interface_meta.py
index db4440ef7b39b7d2a3b2c8047f1ea064bb763dc3..3e49c3265af32a1432d7ec636d9db9f360444b2f 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "odl-interface-meta"
similarity index 96%
rename from resources/tools/odltools/mdsal/odl_l3vpn.py
rename to resources/tools/odltools/odltools/mdsal/models/odl_l3vpn.py
index 5d3932a9955502e03cd56440bb60547703803e1d..34ccbfe8de04eb2c5788b5acf1e954de3f947210 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "odl-l3vpn"
similarity index 92%
rename from resources/tools/odltools/mdsal/opendaylight_inventory.py
rename to resources/tools/odltools/odltools/mdsal/models/opendaylight_inventory.py
index 3d243abebcecdff24374a4776a003fabc3c1db0c..a9b4807673e3ac8c3af9d0969b5dabeae48c26c4 100644 (file)
@@ -1,4 +1,4 @@
-from model import Model
+from odltools.mdsal.model import Model
 
 
 NAME = "opendaylight-inventory"
diff --git a/resources/tools/odltools/odltools/mdsal/tests/__init__.py b/resources/tools/odltools/odltools/mdsal/tests/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
similarity index 83%
rename from resources/tools/odltools/mdsal/tests/test_ietf_interfaces.py
rename to resources/tools/odltools/odltools/mdsal/tests/test_ietf_interfaces.py
index a92d7eece83ef8ebe0af52b8239c99fe861d3747..075ff8aaecda67764e0ab750ca8233467abe656b 100644 (file)
@@ -1,7 +1,8 @@
 import unittest
-from mdsal.model import Model
-from mdsal.ietf_interfaces import interfaces
+
 from odltools import logg
+from odltools.mdsal.model import Model
+from odltools.mdsal.models.ietf_interfaces import interfaces
 
 ip = "127.0.0.1"
 port = "8080"
similarity index 93%
rename from resources/tools/odltools/mdsal/tests/test_itm_state.py
rename to resources/tools/odltools/odltools/mdsal/tests/test_itm_state.py
index 4e248d35b65fe4c3351002bbbc082e514247f18c..e6e287ee1b21df6176c971a6cad7838618600625 100644 (file)
@@ -1,8 +1,9 @@
 import unittest
-from mdsal import itm_state
-from mdsal.model import Model
-from mdsal.itm_state import DpnEndpoints
+
 from odltools import logg
+from odltools.mdsal.model import Model
+from odltools.mdsal.models import itm_state
+from odltools.mdsal.models.itm_state import DpnEndpoints
 
 ip = "127.0.0.1"
 port = "8080"
similarity index 96%
rename from resources/tools/odltools/mdsal/tests/test_models.py
rename to resources/tools/odltools/odltools/mdsal/tests/test_models.py
index 2f0fe8e6e84b6c5516b2227471a7465397e47024..2823844b7c721a59646dff2b07eebded3b01d13a 100644 (file)
@@ -2,8 +2,9 @@ import logging
 import os
 import shutil
 import unittest
-from mdsal import models
+
 from odltools import logg
+from odltools.mdsal import models
 
 
 class TestModels(unittest.TestCase):
similarity index 80%
rename from resources/tools/odltools/mdsal/tests/test_network_topology.py
rename to resources/tools/odltools/odltools/mdsal/tests/test_network_topology.py
index 9ff0d3be390414ec50e28885ad4bc2b6cb34f465..ded1c33cff277c0f615b951dc7e6d55a63b45e70 100644 (file)
@@ -1,8 +1,9 @@
 import unittest
-from mdsal.model import Model
-from mdsal.network_topology import network_topology
-from mdsal.network_topology import NetworkTopology
+
 from odltools import logg
+from odltools.mdsal.model import Model
+from odltools.mdsal.models.network_topology import NetworkTopology
+from odltools.mdsal.models.network_topology import network_topology
 
 ip = "127.0.0.1"
 port = "8080"
similarity index 91%
rename from resources/tools/odltools/mdsal/tests/test_request.py
rename to resources/tools/odltools/odltools/mdsal/tests/test_request.py
index 0f91e496f55ec0567afd9d1fbac7e050ab86c683..b4bda5563da489684d680c51686d9e39480852df 100644 (file)
@@ -1,6 +1,7 @@
 import unittest
-from mdsal import request
+
 from odltools import logg
+from odltools.mdsal import request
 
 
 class TestRequest(unittest.TestCase):
diff --git a/resources/tools/odltools/odltools/netvirt/__init__.py b/resources/tools/odltools/odltools/netvirt/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
similarity index 98%
rename from resources/tools/odltools/netvirt/ds_analyze.py
rename to resources/tools/odltools/odltools/netvirt/ds_analyze.py
index 5e47d26f7adabe0955f97aa987bf030ec8133d8d..de96038f5de46c0f3aaf71d39330fd71b8eab00b 100644 (file)
@@ -1,23 +1,12 @@
-import constants as const
-import flow_parser as fp
 import json
-import netvirt_utils as utils
 from collections import defaultdict
-from mdsal.model import Model
-from mdsal import elan
-from mdsal import id_manager
-from mdsal import ietf_interfaces
-from mdsal import interface_service_bindings
-from mdsal import itm_state
-from mdsal import l3vpn
-from mdsal import mip
-from mdsal import network_topology
-from mdsal import neutron
-from mdsal import odl_fib
-from mdsal import odl_interface_meta
-from mdsal import odl_l3vpn
-from mdsal import opendaylight_inventory
 
+import constants as const
+import flow_parser as fp
+import netvirt_utils as utils
+from odltools.mdsal.model import Model
+from odltools.mdsal.models import opendaylight_inventory, network_topology, itm_state, elan, id_manager, \
+    ietf_interfaces, interface_service_bindings, l3vpn, mip, neutron, odl_fib, odl_interface_meta, odl_l3vpn
 
 # Required
 ifaces = None
@@ -644,5 +633,4 @@ def main(args=None):
 
 
 if __name__ == '__main__':
-    import sys
     main()
diff --git a/resources/tools/odltools/odltools/ovs/__init__.py b/resources/tools/odltools/odltools/ovs/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
similarity index 98%
rename from resources/tools/odltools/ovs/flows.py
rename to resources/tools/odltools/odltools/ovs/flows.py
index 576e66789aafff40c6291deee176cf888cf9d562..7c07ee414d516636bdf70b2b768dd371914f2451 100644 (file)
@@ -1,9 +1,10 @@
 import logging
 from pprint import pformat
+
 import re
-import tables
-import request
 
+import request
+import tables
 
 logger = logging.getLogger("ovs.flows")
 
@@ -37,7 +38,7 @@ class Flows:
         elif type(data) is list:
             self.data = data
         else:
-            logger.error("init: data is not a supproted type")
+            logger.error("init: data is not a supported type")
             return
         self.start = 0
         logger.info("init: Copied %d lines", len(self.data))
@@ -171,7 +172,7 @@ class Flows:
             fline = "{:3} {:9} {:8} {:3} {:13} {:6} {:12} {:1} {:3} {:5}\n" \
                     "    matches={}\n" \
                     "    actions={}\n" \
-                .format(i+1, line[Flows.COOKIE], line[Flows.DURATION],
+                .format(i + 1, line[Flows.COOKIE], line[Flows.DURATION],
                         line[Flows.TABLE], tables.get_table_name(int(line[Flows.TABLE])),
                         line[Flows.N_PACKETS], line[Flows.N_BYTES],
                         line[Flows.SEND_FLOW_REMOVED][0], line[Flows.IDLE_TIMEOUT],
diff --git a/resources/tools/odltools/odltools/ovs/tests/__init__.py b/resources/tools/odltools/odltools/ovs/tests/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
similarity index 95%
rename from resources/tools/odltools/ovs/tests/test_flows.py
rename to resources/tools/odltools/odltools/ovs/tests/test_flows.py
index 96e69ada4436689138270c097c9a6f4112d2d704..ddbf893b637e0e07e47f1545435fdf5234921dd2 100644 (file)
@@ -1,8 +1,10 @@
 import unittest
-from odltools import logg
-from ovs import flows
+
 from ovs import request
 
+from odltools import logg
+from odltools.ovs import flows
+
 
 class TestFlows(unittest.TestCase):
     def setUp(self):
similarity index 94%
rename from resources/tools/odltools/ovs/tests/test_request.py
rename to resources/tools/odltools/odltools/ovs/tests/test_request.py
index ea5b88919cb4bfb4aafcfdfe4425810c4c4ed948..012c2a3bc7aeccf5d18184a6e52b2520d8223e95 100644 (file)
@@ -1,7 +1,8 @@
 import logging
 import unittest
+
 from odltools import logg
-from ovs import request
+from odltools.ovs import request
 
 
 class TestRequest(unittest.TestCase):
similarity index 89%
rename from resources/tools/odltools/ovs/tests/test_tables.py
rename to resources/tools/odltools/odltools/ovs/tests/test_tables.py
index 018080cb4b953e07113edbb7102102141d275413..7132ead75d834b0ccbe16ae8f14d6e6c4aee3a28 100644 (file)
@@ -1,6 +1,7 @@
 import unittest
+
 from odltools import logg
-from ovs import tables
+from odltools.ovs import tables
 
 
 class TestTables(unittest.TestCase):
index 63e2ba7573a741199b28687bf5434bbed35975a4..17614533ac78f01dd8e5248bbe6a5e6be96a855f 100644 (file)
@@ -1,6 +1,7 @@
 import unittest
+
 from odltools import cli
-from csit import robotfiles
+from odltools.csit import robotfiles
 
 
 class TestOdltools(unittest.TestCase):
diff --git a/resources/tools/odltools/requirements.txt b/resources/tools/odltools/requirements.txt
new file mode 100644 (file)
index 0000000..663bd1f
--- /dev/null
@@ -0,0 +1 @@
+requests
\ No newline at end of file
index 34bae718d88a3923aa501044dfaf17db23b53326..0496b13c7ff248838b6041137622bd44aad1daff 100644 (file)
@@ -1,5 +1,6 @@
 [bdist_wheel]
 universal=1
 
-[metadata]
-license_file = LICENSE.txt
\ No newline at end of file
+[egg_info]
+#tag_build = dev
+tag_build =
\ No newline at end of file
index 97a7472daae6d8a07e6e5db54100d89e406c46bb..9a0f650e4d4ba9f7522a61d21c871eec316d6b79 100644 (file)
@@ -1,35 +1,43 @@
 import io
-import re
 from setuptools import find_packages
 from setuptools import setup
+import textwrap
+from odltools import __version__
 
 
-# with io.open('README.rst', 'rt', encoding='utf8') as f:
-#     readme = f.read()
-
-with io.open('odltools/__init__.py', 'rt', encoding='utf8') as f:
-    version = re.search(r'__version__ = \'(.*?)\'', f.read()).group(1)
+with io.open("README.rst", "rt", encoding="utf8") as f:
+    readme = f.read()
 
+with open("requirements.txt") as f:
+    requirements = f.read().splitlines()
 
 setup(
-    name='odltools',
-    version=version,
-    description='OpenDaylight Troubleshooting Tools',
-    url='http://github.com/shague/odltools',
-    author='Sam Hague, Vishal Thapar',
-    author_email='shague@gmail.com, thapar@gmail.com',
-    license='EPL',
-    packages=find_packages(exclude=['*.iml', 'tests*']),
-    install_requires=['requests'],
+    name="odltools",
+    version=__version__,
+    description="NetVirt tools for troubleshooting OpenDaylight and "
+                "OpenStack integration",
+    long_description=readme,
+    long_description_content_type="text/x-rst; charset=UTF-8",
+    url="http://github.com/shague/odltools",
+    author="Sam Hague, Vishal Thapar",
+    author_email="shague@gmail.com, thapar@gmail.com",
+    license="Eclipse Public License",
+    packages=find_packages(exclude=["tests"]),
+    install_requires=requirements,
+    platforms=["All"],
+    python_requires=">=2.7",
+    keywords="development",
     zip_safe=False,
-    classifiers=[
-        'Development Status :: 3 - Alpha',
-        'Intended Audience :: Developers',
-        'Programming Language :: Python',
-        'Programming Language :: Python :: 2',
-        'Programming Language :: Python :: 2.7',
-        'Topic :: Software Development'
-    ],
-    keywords='development',
-    python_requires='>=2.7'
-)
\ No newline at end of file
+    # entry_points={"console_scripts": ["odltools=odltools.__main__:main"]},
+    classifiers=textwrap.dedent("""
+        Development Status :: 1 - Planning
+        Intended Audience :: Developers
+        License :: OSI Approved :: Eclipse Public License 1.0 (EPL-1.0)
+        Natural Language :: English
+        Operating System :: OS Independent
+        Programming Language :: Python
+        Programming Language :: Python :: 2.7
+        Topic :: Software Development
+        Topic :: Utilities
+        """).strip().splitlines()
+)