diff --git a/.gitreview b/.gitreview
index 698048f..64910a0 100644
--- a/.gitreview
+++ b/.gitreview
@@ -1,4 +1,4 @@
 [gerrit]
 host=review.openstack.org
 port=29418
-project=openstack/openstack.git
+project=openstack/neutron-tempest-plugin.git
diff --git a/README.rst b/README.rst
index 2a9af7f..e81ffbe 100644
--- a/README.rst
+++ b/README.rst
@@ -1,19 +1,12 @@
-===============================
+======================
 Neutron Tempest Plugin
-===============================
+======================
 
-Tempest plugin for Neutron
+Tempest plugin for Neutron project.
 
-Please fill here a long description which must be at least 3 lines wrapped on
-80 cols, so that distribution package maintainers can use it in their packages.
-Note that this is a hard requirement.
+It contains the tempest plugin for the functional testing of Neutron Project.
 
 * Free software: Apache license
-* Documentation: http://docs.openstack.org/developer/openstack
-* Source: http://git.openstack.org/cgit/openstack/openstack
-* Bugs: http://bugs.launchpad.net/neutron_tempest_plugin
-
-Features
---------
-
-* TODO
+* Documentation: http://docs.openstack.org/developer/neutron
+* Source: http://git.openstack.org/cgit/openstack/neutron-tempest-plugin
+* Bugs: http://bugs.launchpad.net/neutron
diff --git a/neutron/tests/__init__.py b/neutron/tests/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/neutron/tests/__init__.py
+++ /dev/null
diff --git a/neutron/tests/tempest/__init__.py b/neutron/tests/tempest/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/neutron/tests/tempest/__init__.py
+++ /dev/null
diff --git a/neutron/tests/tempest/README.rst b/neutron_tempest_plugin/README.rst
similarity index 68%
rename from neutron/tests/tempest/README.rst
rename to neutron_tempest_plugin/README.rst
index f27c34e..0d52b02 100644
--- a/neutron/tests/tempest/README.rst
+++ b/neutron_tempest_plugin/README.rst
@@ -4,6 +4,6 @@
 Some files under this path were copied from tempest as part of the move of the
 api tests, and they will be removed as required over time to minimize the
 dependency on the tempest testing framework.  While it exists, only
-neutron.tests.tempest.* should be importing files from this path.
-neutron.tests.tempest.config uses the global cfg.CONF instance and importing it
+neutron_tempest_plugin.* should be importing files from this path.
+neutron_tempest_plugin.config uses the global cfg.CONF instance and importing it
 outside of the api tests has the potential to break Neutron's use of cfg.CONF.
diff --git a/neutron/__init__.py b/neutron_tempest_plugin/__init__.py
similarity index 100%
rename from neutron/__init__.py
rename to neutron_tempest_plugin/__init__.py
diff --git a/neutron/tests/tempest/api/__init__.py b/neutron_tempest_plugin/api/__init__.py
similarity index 100%
rename from neutron/tests/tempest/api/__init__.py
rename to neutron_tempest_plugin/api/__init__.py
diff --git a/neutron/tests/tempest/api/admin/__init__.py b/neutron_tempest_plugin/api/admin/__init__.py
similarity index 100%
rename from neutron/tests/tempest/api/admin/__init__.py
rename to neutron_tempest_plugin/api/admin/__init__.py
diff --git a/neutron/tests/tempest/api/admin/test_agent_management.py b/neutron_tempest_plugin/api/admin/test_agent_management.py
similarity index 96%
rename from neutron/tests/tempest/api/admin/test_agent_management.py
rename to neutron_tempest_plugin/api/admin/test_agent_management.py
index ceda460..72cba62 100644
--- a/neutron/tests/tempest/api/admin/test_agent_management.py
+++ b/neutron_tempest_plugin/api/admin/test_agent_management.py
@@ -12,10 +12,10 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from neutron.tests.tempest.common import tempest_fixtures
+from neutron_tempest_plugin.common import tempest_fixtures
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class AgentManagementTestJSON(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/admin/test_dhcp_agent_scheduler.py b/neutron_tempest_plugin/api/admin/test_dhcp_agent_scheduler.py
similarity index 97%
rename from neutron/tests/tempest/api/admin/test_dhcp_agent_scheduler.py
rename to neutron_tempest_plugin/api/admin/test_dhcp_agent_scheduler.py
index 1a8a015..d0adcb8 100644
--- a/neutron/tests/tempest/api/admin/test_dhcp_agent_scheduler.py
+++ b/neutron_tempest_plugin/api/admin/test_dhcp_agent_scheduler.py
@@ -15,8 +15,8 @@
 from neutron_lib import constants
 from tempest.lib import decorators
 
-from neutron.tests.tempest.common import utils
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.common import utils
 
 
 class DHCPAgentSchedulersTestJSON(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/admin/test_extension_driver_port_security_admin.py b/neutron_tempest_plugin/api/admin/test_extension_driver_port_security_admin.py
similarity index 91%
rename from neutron/tests/tempest/api/admin/test_extension_driver_port_security_admin.py
rename to neutron_tempest_plugin/api/admin/test_extension_driver_port_security_admin.py
index e0bf179..60af89e 100644
--- a/neutron/tests/tempest/api/admin/test_extension_driver_port_security_admin.py
+++ b/neutron_tempest_plugin/api/admin/test_extension_driver_port_security_admin.py
@@ -16,8 +16,8 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest.api import base_security_groups as base_security
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.api import base_security_groups as base_security
 
 
 class PortSecurityAdminTests(base_security.BaseSecGroupTest,
diff --git a/neutron/tests/tempest/api/admin/test_external_network_extension.py b/neutron_tempest_plugin/api/admin/test_external_network_extension.py
similarity index 99%
rename from neutron/tests/tempest/api/admin/test_external_network_extension.py
rename to neutron_tempest_plugin/api/admin/test_external_network_extension.py
index 6f6c94d..cc1b2c2 100644
--- a/neutron/tests/tempest/api/admin/test_external_network_extension.py
+++ b/neutron_tempest_plugin/api/admin/test_external_network_extension.py
@@ -16,7 +16,7 @@
 from tempest.lib import exceptions as lib_exc
 import testtools
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class ExternalNetworksRBACTestJSON(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/admin/test_floating_ips_admin_actions.py b/neutron_tempest_plugin/api/admin/test_floating_ips_admin_actions.py
similarity index 97%
rename from neutron/tests/tempest/api/admin/test_floating_ips_admin_actions.py
rename to neutron_tempest_plugin/api/admin/test_floating_ips_admin_actions.py
index 8fb8f66..b0c5d41 100644
--- a/neutron/tests/tempest/api/admin/test_floating_ips_admin_actions.py
+++ b/neutron_tempest_plugin/api/admin/test_floating_ips_admin_actions.py
@@ -18,8 +18,8 @@
 from tempest.lib import exceptions as lib_exc
 import testtools
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/admin/test_l3_agent_scheduler.py b/neutron_tempest_plugin/api/admin/test_l3_agent_scheduler.py
similarity index 96%
rename from neutron/tests/tempest/api/admin/test_l3_agent_scheduler.py
rename to neutron_tempest_plugin/api/admin/test_l3_agent_scheduler.py
index 01d3846..3981dfb 100644
--- a/neutron/tests/tempest/api/admin/test_l3_agent_scheduler.py
+++ b/neutron_tempest_plugin/api/admin/test_l3_agent_scheduler.py
@@ -15,8 +15,8 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import exceptions
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import exceptions
 
 AGENT_TYPE = 'L3 agent'
 AGENT_MODES = (
diff --git a/neutron/tests/tempest/api/admin/test_networks.py b/neutron_tempest_plugin/api/admin/test_networks.py
similarity index 97%
rename from neutron/tests/tempest/api/admin/test_networks.py
rename to neutron_tempest_plugin/api/admin/test_networks.py
index c7ea008..e57a7e8 100644
--- a/neutron/tests/tempest/api/admin/test_networks.py
+++ b/neutron_tempest_plugin/api/admin/test_networks.py
@@ -16,8 +16,8 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 
 class NetworksTestAdmin(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/admin/test_quotas.py b/neutron_tempest_plugin/api/admin/test_quotas.py
similarity index 98%
rename from neutron/tests/tempest/api/admin/test_quotas.py
rename to neutron_tempest_plugin/api/admin/test_quotas.py
index 04ea492..5c92be0 100644
--- a/neutron/tests/tempest/api/admin/test_quotas.py
+++ b/neutron_tempest_plugin/api/admin/test_quotas.py
@@ -19,8 +19,8 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/admin/test_quotas_negative.py b/neutron_tempest_plugin/api/admin/test_quotas_negative.py
similarity index 98%
rename from neutron/tests/tempest/api/admin/test_quotas_negative.py
rename to neutron_tempest_plugin/api/admin/test_quotas_negative.py
index 84cd499..8960f5f 100644
--- a/neutron/tests/tempest/api/admin/test_quotas_negative.py
+++ b/neutron_tempest_plugin/api/admin/test_quotas_negative.py
@@ -15,8 +15,8 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api.admin import test_quotas
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api.admin import test_quotas
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/admin/test_routers_dvr.py b/neutron_tempest_plugin/api/admin/test_routers_dvr.py
similarity index 98%
rename from neutron/tests/tempest/api/admin/test_routers_dvr.py
rename to neutron_tempest_plugin/api/admin/test_routers_dvr.py
index 8f03cc6..2313d1b 100644
--- a/neutron/tests/tempest/api/admin/test_routers_dvr.py
+++ b/neutron_tempest_plugin/api/admin/test_routers_dvr.py
@@ -16,7 +16,7 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base_routers as base
+from neutron_tempest_plugin.api import base_routers as base
 
 
 class RoutersTestDVR(base.BaseRouterTest):
diff --git a/neutron/tests/tempest/api/admin/test_routers_flavors.py b/neutron_tempest_plugin/api/admin/test_routers_flavors.py
similarity index 98%
rename from neutron/tests/tempest/api/admin/test_routers_flavors.py
rename to neutron_tempest_plugin/api/admin/test_routers_flavors.py
index 4153c2d..86a993a 100644
--- a/neutron/tests/tempest/api/admin/test_routers_flavors.py
+++ b/neutron_tempest_plugin/api/admin/test_routers_flavors.py
@@ -16,7 +16,7 @@
 from tempest.lib import exceptions as lib_exc
 import testtools
 
-from neutron.tests.tempest.api import base_routers as base
+from neutron_tempest_plugin.api import base_routers as base
 
 
 class RoutersFlavorTestCase(base.BaseRouterTest):
diff --git a/neutron/tests/tempest/api/admin/test_routers_ha.py b/neutron_tempest_plugin/api/admin/test_routers_ha.py
similarity index 98%
rename from neutron/tests/tempest/api/admin/test_routers_ha.py
rename to neutron_tempest_plugin/api/admin/test_routers_ha.py
index 644ac18..fafe209 100644
--- a/neutron/tests/tempest/api/admin/test_routers_ha.py
+++ b/neutron_tempest_plugin/api/admin/test_routers_ha.py
@@ -13,7 +13,7 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base_routers as base
+from neutron_tempest_plugin.api import base_routers as base
 
 
 class RoutersTestHA(base.BaseRouterTest):
diff --git a/neutron/tests/tempest/api/admin/test_shared_network_extension.py b/neutron_tempest_plugin/api/admin/test_shared_network_extension.py
similarity index 99%
rename from neutron/tests/tempest/api/admin/test_shared_network_extension.py
rename to neutron_tempest_plugin/api/admin/test_shared_network_extension.py
index 2be0ea2..e2198bd 100644
--- a/neutron/tests/tempest/api/admin/test_shared_network_extension.py
+++ b/neutron_tempest_plugin/api/admin/test_shared_network_extension.py
@@ -21,7 +21,7 @@
 from tempest import test
 import testtools
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class SharedNetworksTest(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/base.py b/neutron_tempest_plugin/api/base.py
similarity index 98%
rename from neutron/tests/tempest/api/base.py
rename to neutron_tempest_plugin/api/base.py
index d9ba6dc..b122ce8 100644
--- a/neutron/tests/tempest/api/base.py
+++ b/neutron_tempest_plugin/api/base.py
@@ -21,11 +21,11 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.common import constants
-from neutron.tests.tempest.common import utils
-from neutron.tests.tempest.api import clients
-from neutron.tests.tempest import config
-from neutron.tests.tempest import exceptions
+from neutron_tempest_plugin.api import clients
+from neutron_tempest_plugin.common import constants
+from neutron_tempest_plugin.common import utils
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin import exceptions
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/base_routers.py b/neutron_tempest_plugin/api/base_routers.py
similarity index 97%
rename from neutron/tests/tempest/api/base_routers.py
rename to neutron_tempest_plugin/api/base_routers.py
index 8b0b5a4..c8d3783 100644
--- a/neutron/tests/tempest/api/base_routers.py
+++ b/neutron_tempest_plugin/api/base_routers.py
@@ -13,7 +13,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class BaseRouterTest(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/base_security_groups.py b/neutron_tempest_plugin/api/base_security_groups.py
similarity index 97%
rename from neutron/tests/tempest/api/base_security_groups.py
rename to neutron_tempest_plugin/api/base_security_groups.py
index 5028ec1..e2736f3 100644
--- a/neutron/tests/tempest/api/base_security_groups.py
+++ b/neutron_tempest_plugin/api/base_security_groups.py
@@ -15,7 +15,7 @@
 
 from tempest.lib.common.utils import data_utils
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class BaseSecGroupTest(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/clients.py b/neutron_tempest_plugin/api/clients.py
similarity index 96%
rename from neutron/tests/tempest/api/clients.py
rename to neutron_tempest_plugin/api/clients.py
index 949ce2e..272f5be 100644
--- a/neutron/tests/tempest/api/clients.py
+++ b/neutron_tempest_plugin/api/clients.py
@@ -19,8 +19,8 @@
 from tempest.lib.services.identity.v3 import projects_client
 from tempest import manager
 
-from neutron.tests.tempest import config
-from neutron.tests.tempest.services.network.json import network_client
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.services.network.json import network_client
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/test_address_scopes.py b/neutron_tempest_plugin/api/test_address_scopes.py
similarity index 98%
rename from neutron/tests/tempest/api/test_address_scopes.py
rename to neutron_tempest_plugin/api/test_address_scopes.py
index d4474e4..e9575b4 100644
--- a/neutron/tests/tempest/api/test_address_scopes.py
+++ b/neutron_tempest_plugin/api/test_address_scopes.py
@@ -17,7 +17,7 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 ADDRESS_SCOPE_NAME = 'smoke-address-scope'
diff --git a/neutron/tests/tempest/api/test_address_scopes_negative.py b/neutron_tempest_plugin/api/test_address_scopes_negative.py
similarity index 98%
rename from neutron/tests/tempest/api/test_address_scopes_negative.py
rename to neutron_tempest_plugin/api/test_address_scopes_negative.py
index 2e95f59..13c5aac 100644
--- a/neutron/tests/tempest/api/test_address_scopes_negative.py
+++ b/neutron_tempest_plugin/api/test_address_scopes_negative.py
@@ -16,7 +16,7 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import test_address_scopes
+from neutron_tempest_plugin.api import test_address_scopes
 
 
 class AddressScopeTestNegative(test_address_scopes.AddressScopeTestBase):
diff --git a/neutron/tests/tempest/api/test_allowed_address_pair.py b/neutron_tempest_plugin/api/test_allowed_address_pair.py
similarity index 98%
rename from neutron/tests/tempest/api/test_allowed_address_pair.py
rename to neutron_tempest_plugin/api/test_allowed_address_pair.py
index d339a26..1c6abcc 100644
--- a/neutron/tests/tempest/api/test_allowed_address_pair.py
+++ b/neutron_tempest_plugin/api/test_allowed_address_pair.py
@@ -16,8 +16,8 @@
 import netaddr
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 
 class AllowedAddressPairTestJSON(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_auto_allocated_topology.py b/neutron_tempest_plugin/api/test_auto_allocated_topology.py
similarity index 98%
rename from neutron/tests/tempest/api/test_auto_allocated_topology.py
rename to neutron_tempest_plugin/api/test_auto_allocated_topology.py
index e7ebfa0..37f9ad1 100644
--- a/neutron/tests/tempest/api/test_auto_allocated_topology.py
+++ b/neutron_tempest_plugin/api/test_auto_allocated_topology.py
@@ -17,7 +17,7 @@
 from oslo_config import cfg
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class TestAutoAllocatedTopology(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/test_dhcp_ipv6.py b/neutron_tempest_plugin/api/test_dhcp_ipv6.py
similarity index 97%
rename from neutron/tests/tempest/api/test_dhcp_ipv6.py
rename to neutron_tempest_plugin/api/test_dhcp_ipv6.py
index afe9c53..f408c97 100644
--- a/neutron/tests/tempest/api/test_dhcp_ipv6.py
+++ b/neutron_tempest_plugin/api/test_dhcp_ipv6.py
@@ -18,8 +18,8 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/test_extension_driver_port_security.py b/neutron_tempest_plugin/api/test_extension_driver_port_security.py
similarity index 97%
rename from neutron/tests/tempest/api/test_extension_driver_port_security.py
rename to neutron_tempest_plugin/api/test_extension_driver_port_security.py
index bd7d801..7a8cf0e 100644
--- a/neutron/tests/tempest/api/test_extension_driver_port_security.py
+++ b/neutron_tempest_plugin/api/test_extension_driver_port_security.py
@@ -18,8 +18,8 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest.api import base_security_groups as base_security
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.api import base_security_groups as base_security
 
 FAKE_IP = '10.0.0.1'
 FAKE_MAC = '00:25:64:e8:19:dd'
diff --git a/neutron/tests/tempest/api/test_extensions.py b/neutron_tempest_plugin/api/test_extensions.py
similarity index 96%
rename from neutron/tests/tempest/api/test_extensions.py
rename to neutron_tempest_plugin/api/test_extensions.py
index 3809a93..4659ba9 100644
--- a/neutron/tests/tempest/api/test_extensions.py
+++ b/neutron_tempest_plugin/api/test_extensions.py
@@ -13,7 +13,7 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class ExtensionsTest(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_extra_dhcp_options.py b/neutron_tempest_plugin/api/test_extra_dhcp_options.py
similarity index 98%
rename from neutron/tests/tempest/api/test_extra_dhcp_options.py
rename to neutron_tempest_plugin/api/test_extra_dhcp_options.py
index eeb3487..e5f73b2 100644
--- a/neutron/tests/tempest/api/test_extra_dhcp_options.py
+++ b/neutron_tempest_plugin/api/test_extra_dhcp_options.py
@@ -16,7 +16,7 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class ExtraDHCPOptionsTestJSON(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_flavors_extensions.py b/neutron_tempest_plugin/api/test_flavors_extensions.py
similarity index 98%
rename from neutron/tests/tempest/api/test_flavors_extensions.py
rename to neutron_tempest_plugin/api/test_flavors_extensions.py
index 764f3ed..30f1eb6 100644
--- a/neutron/tests/tempest/api/test_flavors_extensions.py
+++ b/neutron_tempest_plugin/api/test_flavors_extensions.py
@@ -15,7 +15,7 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class TestFlavorsJson(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/test_floating_ips.py b/neutron_tempest_plugin/api/test_floating_ips.py
similarity index 97%
rename from neutron/tests/tempest/api/test_floating_ips.py
rename to neutron_tempest_plugin/api/test_floating_ips.py
index 3e21356..3b283cb 100644
--- a/neutron/tests/tempest/api/test_floating_ips.py
+++ b/neutron_tempest_plugin/api/test_floating_ips.py
@@ -17,8 +17,8 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/test_floating_ips_negative.py b/neutron_tempest_plugin/api/test_floating_ips_negative.py
similarity index 96%
rename from neutron/tests/tempest/api/test_floating_ips_negative.py
rename to neutron_tempest_plugin/api/test_floating_ips_negative.py
index 84cd2ec..453af71 100644
--- a/neutron/tests/tempest/api/test_floating_ips_negative.py
+++ b/neutron_tempest_plugin/api/test_floating_ips_negative.py
@@ -18,8 +18,8 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/test_metering_extensions.py b/neutron_tempest_plugin/api/test_metering_extensions.py
similarity index 98%
rename from neutron/tests/tempest/api/test_metering_extensions.py
rename to neutron_tempest_plugin/api/test_metering_extensions.py
index 2d95072..186b024 100644
--- a/neutron/tests/tempest/api/test_metering_extensions.py
+++ b/neutron_tempest_plugin/api/test_metering_extensions.py
@@ -16,7 +16,7 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 LONG_NAME_OK = 'x' * db_const.NAME_FIELD_SIZE
 
diff --git a/neutron/tests/tempest/api/test_metering_negative.py b/neutron_tempest_plugin/api/test_metering_negative.py
similarity index 96%
rename from neutron/tests/tempest/api/test_metering_negative.py
rename to neutron_tempest_plugin/api/test_metering_negative.py
index 4b70523..175f314 100644
--- a/neutron/tests/tempest/api/test_metering_negative.py
+++ b/neutron_tempest_plugin/api/test_metering_negative.py
@@ -16,7 +16,7 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 LONG_NAME_NG = 'x' * (db_const.NAME_FIELD_SIZE + 1)
 
diff --git a/neutron/tests/tempest/api/test_network_ip_availability.py b/neutron_tempest_plugin/api/test_network_ip_availability.py
similarity index 98%
rename from neutron/tests/tempest/api/test_network_ip_availability.py
rename to neutron_tempest_plugin/api/test_network_ip_availability.py
index 416c38e..fe83a77 100644
--- a/neutron/tests/tempest/api/test_network_ip_availability.py
+++ b/neutron_tempest_plugin/api/test_network_ip_availability.py
@@ -21,8 +21,8 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 from neutron_lib import constants as lib_constants
 
diff --git a/neutron/tests/tempest/api/test_network_ip_availability_negative.py b/neutron_tempest_plugin/api/test_network_ip_availability_negative.py
similarity index 93%
rename from neutron/tests/tempest/api/test_network_ip_availability_negative.py
rename to neutron_tempest_plugin/api/test_network_ip_availability_negative.py
index 7e9b42b..5ba4937 100644
--- a/neutron/tests/tempest/api/test_network_ip_availability_negative.py
+++ b/neutron_tempest_plugin/api/test_network_ip_availability_negative.py
@@ -16,7 +16,7 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import test_network_ip_availability as net_ip
+from neutron_tempest_plugin.api import test_network_ip_availability as net_ip
 
 
 class NetworksIpAvailabilityNegativeTest(net_ip.NetworksIpAvailabilityTest):
diff --git a/neutron/tests/tempest/api/test_networks.py b/neutron_tempest_plugin/api/test_networks.py
similarity index 98%
rename from neutron/tests/tempest/api/test_networks.py
rename to neutron_tempest_plugin/api/test_networks.py
index b350068..b991993 100644
--- a/neutron/tests/tempest/api/test_networks.py
+++ b/neutron_tempest_plugin/api/test_networks.py
@@ -17,8 +17,8 @@
 from tempest import test
 import testtools
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 
 class NetworksTestJSON(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_networks_negative.py b/neutron_tempest_plugin/api/test_networks_negative.py
similarity index 96%
rename from neutron/tests/tempest/api/test_networks_negative.py
rename to neutron_tempest_plugin/api/test_networks_negative.py
index 3aae948..93f32f7 100644
--- a/neutron/tests/tempest/api/test_networks_negative.py
+++ b/neutron_tempest_plugin/api/test_networks_negative.py
@@ -14,7 +14,7 @@
 from tempest.lib import exceptions as lib_exc
 import testtools
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class NetworksNegativeTest(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_ports.py b/neutron_tempest_plugin/api/test_ports.py
similarity index 99%
rename from neutron/tests/tempest/api/test_ports.py
rename to neutron_tempest_plugin/api/test_ports.py
index acafa57..c68f4e3 100644
--- a/neutron/tests/tempest/api/test_ports.py
+++ b/neutron_tempest_plugin/api/test_ports.py
@@ -16,7 +16,7 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class PortsTestJSON(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_qos.py b/neutron_tempest_plugin/api/test_qos.py
similarity index 99%
rename from neutron/tests/tempest/api/test_qos.py
rename to neutron_tempest_plugin/api/test_qos.py
index 3944dd7..a075b67 100644
--- a/neutron/tests/tempest/api/test_qos.py
+++ b/neutron_tempest_plugin/api/test_qos.py
@@ -20,8 +20,8 @@
 import testscenarios
 import testtools
 
-from neutron.tests.tempest.common import qos_consts
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.common import qos_consts
 
 
 load_tests = testscenarios.load_tests_apply_scenarios
diff --git a/neutron/tests/tempest/api/test_qos_negative.py b/neutron_tempest_plugin/api/test_qos_negative.py
similarity index 97%
rename from neutron/tests/tempest/api/test_qos_negative.py
rename to neutron_tempest_plugin/api/test_qos_negative.py
index 275fe05..e26a536 100644
--- a/neutron/tests/tempest/api/test_qos_negative.py
+++ b/neutron_tempest_plugin/api/test_qos_negative.py
@@ -14,7 +14,7 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 LONG_NAME_NG = 'z' * (db_const.NAME_FIELD_SIZE + 1)
 LONG_DESCRIPTION_NG = 'z' * (db_const.LONG_DESCRIPTION_FIELD_SIZE + 1)
diff --git a/neutron/tests/tempest/api/test_revisions.py b/neutron_tempest_plugin/api/test_revisions.py
similarity index 98%
rename from neutron/tests/tempest/api/test_revisions.py
rename to neutron_tempest_plugin/api/test_revisions.py
index 83c8410..1d860ca 100644
--- a/neutron/tests/tempest/api/test_revisions.py
+++ b/neutron_tempest_plugin/api/test_revisions.py
@@ -16,9 +16,9 @@
 from tempest.lib import exceptions
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest.api import base_security_groups as bsg
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.api import base_security_groups as bsg
+from neutron_tempest_plugin import config
 
 
 class TestRevisions(base.BaseAdminNetworkTest, bsg.BaseSecGroupTest):
diff --git a/neutron/tests/tempest/api/test_routers.py b/neutron_tempest_plugin/api/test_routers.py
similarity index 98%
rename from neutron/tests/tempest/api/test_routers.py
rename to neutron_tempest_plugin/api/test_routers.py
index 9c915aa..11fdecf 100644
--- a/neutron/tests/tempest/api/test_routers.py
+++ b/neutron_tempest_plugin/api/test_routers.py
@@ -18,10 +18,10 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest.common import utils
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest.api import base_routers
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.api import base_routers
+from neutron_tempest_plugin.common import utils
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/test_routers_negative.py b/neutron_tempest_plugin/api/test_routers_negative.py
similarity index 97%
rename from neutron/tests/tempest/api/test_routers_negative.py
rename to neutron_tempest_plugin/api/test_routers_negative.py
index b2b198d..2f4ad44 100644
--- a/neutron/tests/tempest/api/test_routers_negative.py
+++ b/neutron_tempest_plugin/api/test_routers_negative.py
@@ -18,7 +18,7 @@
 from tempest.lib import exceptions as lib_exc
 import testtools
 
-from neutron.tests.tempest.api import base_routers as base
+from neutron_tempest_plugin.api import base_routers as base
 
 
 class RoutersNegativeTestBase(base.BaseRouterTest):
diff --git a/neutron/tests/tempest/api/test_security_groups.py b/neutron_tempest_plugin/api/test_security_groups.py
similarity index 97%
rename from neutron/tests/tempest/api/test_security_groups.py
rename to neutron_tempest_plugin/api/test_security_groups.py
index 5ff905d..46e00f7 100644
--- a/neutron/tests/tempest/api/test_security_groups.py
+++ b/neutron_tempest_plugin/api/test_security_groups.py
@@ -16,7 +16,7 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base_security_groups as base
+from neutron_tempest_plugin.api import base_security_groups as base
 
 
 class SecGroupTest(base.BaseSecGroupTest):
diff --git a/neutron/tests/tempest/api/test_security_groups_negative.py b/neutron_tempest_plugin/api/test_security_groups_negative.py
similarity index 97%
rename from neutron/tests/tempest/api/test_security_groups_negative.py
rename to neutron_tempest_plugin/api/test_security_groups_negative.py
index 649f375..fd54a5c 100644
--- a/neutron/tests/tempest/api/test_security_groups_negative.py
+++ b/neutron_tempest_plugin/api/test_security_groups_negative.py
@@ -17,7 +17,7 @@
 from tempest.lib import decorators
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base_security_groups as base
+from neutron_tempest_plugin.api import base_security_groups as base
 
 LONG_NAME_NG = 'x' * (db_const.NAME_FIELD_SIZE + 1)
 
diff --git a/neutron/tests/tempest/api/test_service_type_management.py b/neutron_tempest_plugin/api/test_service_type_management.py
similarity index 95%
rename from neutron/tests/tempest/api/test_service_type_management.py
rename to neutron_tempest_plugin/api/test_service_type_management.py
index 3ca7250..adcbb6c 100644
--- a/neutron/tests/tempest/api/test_service_type_management.py
+++ b/neutron_tempest_plugin/api/test_service_type_management.py
@@ -12,7 +12,7 @@
 
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class ServiceTypeManagementTest(base.BaseNetworkTest):
diff --git a/neutron/tests/tempest/api/test_subnetpools.py b/neutron_tempest_plugin/api/test_subnetpools.py
similarity index 99%
rename from neutron/tests/tempest/api/test_subnetpools.py
rename to neutron_tempest_plugin/api/test_subnetpools.py
index e2fb3d6..5da0ad8 100644
--- a/neutron/tests/tempest/api/test_subnetpools.py
+++ b/neutron_tempest_plugin/api/test_subnetpools.py
@@ -17,7 +17,7 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 SUBNETPOOL_NAME = 'smoke-subnetpool'
 SUBNET_NAME = 'smoke-subnet'
diff --git a/neutron/tests/tempest/api/test_subnetpools_negative.py b/neutron_tempest_plugin/api/test_subnetpools_negative.py
similarity index 99%
rename from neutron/tests/tempest/api/test_subnetpools_negative.py
rename to neutron_tempest_plugin/api/test_subnetpools_negative.py
index 5467664..950b57e 100644
--- a/neutron/tests/tempest/api/test_subnetpools_negative.py
+++ b/neutron_tempest_plugin/api/test_subnetpools_negative.py
@@ -20,7 +20,7 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import test_subnetpools
+from neutron_tempest_plugin.api import test_subnetpools
 
 
 SUBNETPOOL_NAME = 'smoke-subnetpool'
diff --git a/neutron/tests/tempest/api/test_subnets.py b/neutron_tempest_plugin/api/test_subnets.py
similarity index 97%
rename from neutron/tests/tempest/api/test_subnets.py
rename to neutron_tempest_plugin/api/test_subnets.py
index 210dcdc..fb2f4d6 100644
--- a/neutron/tests/tempest/api/test_subnets.py
+++ b/neutron_tempest_plugin/api/test_subnets.py
@@ -12,7 +12,7 @@
 
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class SubnetsSearchCriteriaTest(base.BaseSearchCriteriaTest):
diff --git a/neutron/tests/tempest/api/test_tag.py b/neutron_tempest_plugin/api/test_tag.py
similarity index 99%
rename from neutron/tests/tempest/api/test_tag.py
rename to neutron_tempest_plugin/api/test_tag.py
index 0819951..c56d611 100644
--- a/neutron/tests/tempest/api/test_tag.py
+++ b/neutron_tempest_plugin/api/test_tag.py
@@ -14,7 +14,7 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
+from neutron_tempest_plugin.api import base
 
 
 class TagTestJSON(base.BaseAdminNetworkTest):
diff --git a/neutron/tests/tempest/api/test_timestamp.py b/neutron_tempest_plugin/api/test_timestamp.py
similarity index 98%
rename from neutron/tests/tempest/api/test_timestamp.py
rename to neutron_tempest_plugin/api/test_timestamp.py
index 2406922..20d5703 100644
--- a/neutron/tests/tempest/api/test_timestamp.py
+++ b/neutron_tempest_plugin/api/test_timestamp.py
@@ -15,10 +15,10 @@
 from tempest.lib.common.utils import data_utils
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest.api import base_routers
-from neutron.tests.tempest.api import base_security_groups
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin.api import base_routers
+from neutron_tempest_plugin.api import base_security_groups
+from neutron_tempest_plugin import config
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/api/test_trunk.py b/neutron_tempest_plugin/api/test_trunk.py
similarity index 99%
rename from neutron/tests/tempest/api/test_trunk.py
rename to neutron_tempest_plugin/api/test_trunk.py
index aef82e7..965b248 100644
--- a/neutron/tests/tempest/api/test_trunk.py
+++ b/neutron_tempest_plugin/api/test_trunk.py
@@ -18,8 +18,8 @@
 from tempest.lib import exceptions as lib_exc
 from tempest import test
 
-from neutron.tests.tempest.api import base
-from neutron.tests.tempest import config
+from neutron_tempest_plugin.api import base
+from neutron_tempest_plugin import config
 
 
 def trunks_cleanup(client, trunks):
diff --git a/neutron/tests/tempest/api/test_trunk_details.py b/neutron_tempest_plugin/api/test_trunk_details.py
similarity index 97%
rename from neutron/tests/tempest/api/test_trunk_details.py
rename to neutron_tempest_plugin/api/test_trunk_details.py
index b51025b..972f216 100644
--- a/neutron/tests/tempest/api/test_trunk_details.py
+++ b/neutron_tempest_plugin/api/test_trunk_details.py
@@ -14,7 +14,7 @@
 
 from tempest.lib import decorators
 
-from neutron.tests.tempest.api import test_trunk
+from neutron_tempest_plugin.api import test_trunk
 
 
 class TestTrunkDetailsJSON(test_trunk.TrunkTestJSONBase):
diff --git a/neutron/tests/tempest/api/test_trunk_negative.py b/neutron_tempest_plugin/api/test_trunk_negative.py
similarity index 99%
rename from neutron/tests/tempest/api/test_trunk_negative.py
rename to neutron_tempest_plugin/api/test_trunk_negative.py
index b34b5fd..699b26f 100644
--- a/neutron/tests/tempest/api/test_trunk_negative.py
+++ b/neutron_tempest_plugin/api/test_trunk_negative.py
@@ -17,7 +17,7 @@
 from tempest.lib import exceptions as lib_exc
 import testtools
 
-from neutron.tests.tempest.api import test_trunk
+from neutron_tempest_plugin.api import test_trunk
 
 
 class TrunkTestJSON(test_trunk.TrunkTestJSONBase):
diff --git a/neutron/tests/tempest/common/__init__.py b/neutron_tempest_plugin/common/__init__.py
similarity index 100%
rename from neutron/tests/tempest/common/__init__.py
rename to neutron_tempest_plugin/common/__init__.py
diff --git a/neutron/tests/tempest/common/constants.py b/neutron_tempest_plugin/common/constants.py
similarity index 100%
rename from neutron/tests/tempest/common/constants.py
rename to neutron_tempest_plugin/common/constants.py
diff --git a/neutron/tests/tempest/common/qos_consts.py b/neutron_tempest_plugin/common/qos_consts.py
similarity index 100%
rename from neutron/tests/tempest/common/qos_consts.py
rename to neutron_tempest_plugin/common/qos_consts.py
diff --git a/neutron/tests/tempest/common/ssh.py b/neutron_tempest_plugin/common/ssh.py
similarity index 95%
rename from neutron/tests/tempest/common/ssh.py
rename to neutron_tempest_plugin/common/ssh.py
index 095a12d..b919b65 100644
--- a/neutron/tests/tempest/common/ssh.py
+++ b/neutron_tempest_plugin/common/ssh.py
@@ -14,7 +14,7 @@
 
 from tempest.lib.common import ssh
 
-from neutron.tests.tempest import config
+from neutron_tempest_plugin import config
 
 
 class Client(ssh.Client):
diff --git a/neutron/tests/tempest/common/tempest_fixtures.py b/neutron_tempest_plugin/common/tempest_fixtures.py
similarity index 100%
rename from neutron/tests/tempest/common/tempest_fixtures.py
rename to neutron_tempest_plugin/common/tempest_fixtures.py
diff --git a/neutron/tests/tempest/common/utils.py b/neutron_tempest_plugin/common/utils.py
similarity index 97%
rename from neutron/tests/tempest/common/utils.py
rename to neutron_tempest_plugin/common/utils.py
index 2e411fa..ecccd18 100644
--- a/neutron/tests/tempest/common/utils.py
+++ b/neutron_tempest_plugin/common/utils.py
@@ -18,15 +18,18 @@
 
 """Utilities and helper functions."""
 
-import threading
 import eventlet
+import threading
+import time
+
 
 class classproperty(object):
     def __init__(self, f):
         self.func = f
 
     def __get__(self, obj, owner):
-	return self.func(owner)
+        return self.func(owner)
+
 
 class WaitTimeout(Exception):
     """Default exception coming from wait_until_true() function."""
@@ -47,6 +50,7 @@
     def time_to_wait(self):
         return self.timestamp - time.time() + self._threshold
 
+
 def wait_until_true(predicate, timeout=60, sleep=1, exception=None):
     """
     Wait until callable predicate is evaluated as True
diff --git a/neutron/tests/tempest/config.py b/neutron_tempest_plugin/config.py
similarity index 100%
rename from neutron/tests/tempest/config.py
rename to neutron_tempest_plugin/config.py
diff --git a/neutron/tests/tempest/exceptions.py b/neutron_tempest_plugin/exceptions.py
similarity index 100%
rename from neutron/tests/tempest/exceptions.py
rename to neutron_tempest_plugin/exceptions.py
diff --git a/neutron/tests/tempest/plugin.py b/neutron_tempest_plugin/plugin.py
similarity index 89%
rename from neutron/tests/tempest/plugin.py
rename to neutron_tempest_plugin/plugin.py
index 12a01ee..fc41bdd 100644
--- a/neutron/tests/tempest/plugin.py
+++ b/neutron_tempest_plugin/plugin.py
@@ -18,14 +18,12 @@
 
 from tempest.test_discover import plugins
 
-import neutron
-
 
 class NeutronTempestPlugin(plugins.TempestPlugin):
     def load_tests(self):
         base_path = os.path.split(os.path.dirname(
-            os.path.abspath(neutron.__file__)))[0]
-        test_dir = "neutron/tests/tempest"
+            os.path.abspath(__file__)))[0]
+        test_dir = "neutron_tempest_plugin"
         full_test_dir = os.path.join(base_path, test_dir)
         return full_test_dir, base_path
 
diff --git a/neutron/tests/tempest/scenario/__init__.py b/neutron_tempest_plugin/scenario/__init__.py
similarity index 100%
rename from neutron/tests/tempest/scenario/__init__.py
rename to neutron_tempest_plugin/scenario/__init__.py
diff --git a/neutron/tests/tempest/scenario/base.py b/neutron_tempest_plugin/scenario/base.py
similarity index 97%
rename from neutron/tests/tempest/scenario/base.py
rename to neutron_tempest_plugin/scenario/base.py
index 3c89586..e810490 100644
--- a/neutron/tests/tempest/scenario/base.py
+++ b/neutron_tempest_plugin/scenario/base.py
@@ -21,10 +21,10 @@
 from tempest.lib.common.utils import test_utils
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest.api import base as base_api
-from neutron.tests.tempest.common import ssh
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import constants
+from neutron_tempest_plugin.api import base as base_api
+from neutron_tempest_plugin.common import ssh
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import constants
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/scenario/constants.py b/neutron_tempest_plugin/scenario/constants.py
similarity index 100%
rename from neutron/tests/tempest/scenario/constants.py
rename to neutron_tempest_plugin/scenario/constants.py
diff --git a/neutron/tests/tempest/scenario/exceptions.py b/neutron_tempest_plugin/scenario/exceptions.py
similarity index 100%
rename from neutron/tests/tempest/scenario/exceptions.py
rename to neutron_tempest_plugin/scenario/exceptions.py
diff --git a/neutron/tests/tempest/scenario/test_basic.py b/neutron_tempest_plugin/scenario/test_basic.py
similarity index 92%
rename from neutron/tests/tempest/scenario/test_basic.py
rename to neutron_tempest_plugin/scenario/test_basic.py
index 9006c44..d825e15 100644
--- a/neutron/tests/tempest/scenario/test_basic.py
+++ b/neutron_tempest_plugin/scenario/test_basic.py
@@ -14,8 +14,8 @@
 #    under the License.
 from tempest.lib import decorators
 
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import base
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import base
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/scenario/test_dvr.py b/neutron_tempest_plugin/scenario/test_dvr.py
similarity index 95%
rename from neutron/tests/tempest/scenario/test_dvr.py
rename to neutron_tempest_plugin/scenario/test_dvr.py
index 0b03276..3da0694 100644
--- a/neutron/tests/tempest/scenario/test_dvr.py
+++ b/neutron_tempest_plugin/scenario/test_dvr.py
@@ -15,9 +15,9 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import base
 from neutron_lib import constants
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import base
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/scenario/test_floatingip.py b/neutron_tempest_plugin/scenario/test_floatingip.py
similarity index 96%
rename from neutron/tests/tempest/scenario/test_floatingip.py
rename to neutron_tempest_plugin/scenario/test_floatingip.py
index fe6ce3e..97bfcc5 100644
--- a/neutron/tests/tempest/scenario/test_floatingip.py
+++ b/neutron_tempest_plugin/scenario/test_floatingip.py
@@ -21,10 +21,10 @@
 import testscenarios
 from testscenarios.scenarios import multiply_scenarios
 
-from neutron.tests.tempest.common import ssh
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import base
-from neutron.tests.tempest.scenario import constants
+from neutron_tempest_plugin.common import ssh
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import base
+from neutron_tempest_plugin.scenario import constants
 
 
 CONF = config.CONF
diff --git a/neutron/tests/tempest/scenario/test_migration.py b/neutron_tempest_plugin/scenario/test_migration.py
similarity index 97%
rename from neutron/tests/tempest/scenario/test_migration.py
rename to neutron_tempest_plugin/scenario/test_migration.py
index 4951c61..291611c 100644
--- a/neutron/tests/tempest/scenario/test_migration.py
+++ b/neutron_tempest_plugin/scenario/test_migration.py
@@ -16,8 +16,8 @@
 from tempest.lib import decorators
 from tempest import test
 
-from neutron.tests.tempest.scenario import base
-from neutron.tests.tempest.scenario import test_dvr
+from neutron_tempest_plugin.scenario import base
+from neutron_tempest_plugin.scenario import test_dvr
 
 
 class NetworkMigrationTestBase(base.BaseTempestTestCase,
diff --git a/neutron/tests/tempest/scenario/test_portsecurity.py b/neutron_tempest_plugin/scenario/test_portsecurity.py
similarity index 95%
rename from neutron/tests/tempest/scenario/test_portsecurity.py
rename to neutron_tempest_plugin/scenario/test_portsecurity.py
index 76b23a4..257627c 100644
--- a/neutron/tests/tempest/scenario/test_portsecurity.py
+++ b/neutron_tempest_plugin/scenario/test_portsecurity.py
@@ -14,8 +14,8 @@
 
 from tempest.lib import decorators
 
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import base
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import base
 
 CONF = config.CONF
 
diff --git a/neutron/tests/tempest/scenario/test_qos.py b/neutron_tempest_plugin/scenario/test_qos.py
similarity index 91%
rename from neutron/tests/tempest/scenario/test_qos.py
rename to neutron_tempest_plugin/scenario/test_qos.py
index 772996f..d93f57f 100644
--- a/neutron/tests/tempest/scenario/test_qos.py
+++ b/neutron_tempest_plugin/scenario/test_qos.py
@@ -21,14 +21,14 @@
 from tempest.lib import exceptions
 from tempest import test
 
-from neutron.tests.tempest.common import utils
-from neutron.tests.tempest.common import qos_consts
-from neutron.tests.tempest.api import base as base_api
-from neutron.tests.tempest.common import ssh
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import base
-from neutron.tests.tempest.scenario import constants
-from neutron.tests.tempest.scenario import exceptions as sc_exceptions
+from neutron_tempest_plugin.api import base as base_api
+from neutron_tempest_plugin.common import qos_consts
+from neutron_tempest_plugin.common import ssh
+from neutron_tempest_plugin.common import utils
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import base
+from neutron_tempest_plugin.scenario import constants
+from neutron_tempest_plugin.scenario import exceptions as sc_exceptions
 
 CONF = config.CONF
 LOG = logging.getLogger(__name__)
@@ -154,9 +154,9 @@
                                 CONF.validation.image_ssh_user,
                                 pkey=self.keypair['private_key'])
         policy = self.os_admin.network_client.create_qos_policy(
-                                        name='test-policy',
-                                        description='test-qos-policy',
-                                        shared=True)
+                                       name='test-policy',
+                                       description='test-qos-policy',
+                                       shared=True)
         policy_id = policy['policy']['id']
         self.os_admin.network_client.create_bandwidth_limit_rule(
             policy_id, max_kbps=constants.LIMIT_KILO_BITS_PER_SECOND,
diff --git a/neutron/tests/tempest/scenario/test_trunk.py b/neutron_tempest_plugin/scenario/test_trunk.py
similarity index 97%
rename from neutron/tests/tempest/scenario/test_trunk.py
rename to neutron_tempest_plugin/scenario/test_trunk.py
index 1c6cd5e..95906a0 100644
--- a/neutron/tests/tempest/scenario/test_trunk.py
+++ b/neutron_tempest_plugin/scenario/test_trunk.py
@@ -20,11 +20,11 @@
 from tempest import test
 import testtools
 
-from neutron.tests.tempest.common import utils
-from neutron.tests.tempest.common import ssh
-from neutron.tests.tempest import config
-from neutron.tests.tempest.scenario import base
-from neutron.tests.tempest.scenario import constants
+from neutron_tempest_plugin.common import ssh
+from neutron_tempest_plugin.common import utils
+from neutron_tempest_plugin import config
+from neutron_tempest_plugin.scenario import base
+from neutron_tempest_plugin.scenario import constants
 
 LOG = logging.getLogger(__name__)
 CONF = config.CONF
diff --git a/neutron/tests/tempest/services/__init__.py b/neutron_tempest_plugin/services/__init__.py
similarity index 100%
rename from neutron/tests/tempest/services/__init__.py
rename to neutron_tempest_plugin/services/__init__.py
diff --git a/neutron/tests/tempest/services/network/__init__.py b/neutron_tempest_plugin/services/network/__init__.py
similarity index 100%
rename from neutron/tests/tempest/services/network/__init__.py
rename to neutron_tempest_plugin/services/network/__init__.py
diff --git a/neutron/tests/tempest/services/network/json/__init__.py b/neutron_tempest_plugin/services/network/json/__init__.py
similarity index 100%
rename from neutron/tests/tempest/services/network/json/__init__.py
rename to neutron_tempest_plugin/services/network/json/__init__.py
diff --git a/neutron/tests/tempest/services/network/json/network_client.py b/neutron_tempest_plugin/services/network/json/network_client.py
similarity index 99%
rename from neutron/tests/tempest/services/network/json/network_client.py
rename to neutron_tempest_plugin/services/network/json/network_client.py
index 358dd64..48b537d 100644
--- a/neutron/tests/tempest/services/network/json/network_client.py
+++ b/neutron_tempest_plugin/services/network/json/network_client.py
@@ -17,7 +17,7 @@
 from tempest.lib.common import rest_client as service_client
 from tempest.lib import exceptions as lib_exc
 
-from neutron.tests.tempest import exceptions
+from neutron_tempest_plugin import exceptions
 
 
 class NetworkClientJSON(service_client.RestClient):
diff --git a/setup.cfg b/setup.cfg
index 2fb5c94..b0b7405 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
 [metadata]
-name = openstack
-summary = Tempest plugin neutron_tempest_plugin
+name = neutron_tempest_plugin
+summary = Tempest plugin for Neutron Project
 description-file =
     README.rst
 author = OpenStack
@@ -21,7 +21,7 @@
 
 [files]
 packages =
-    neutron
+    neutron_tempest_plugin
 
 [build_sphinx]
 all-files = 1
@@ -37,15 +37,15 @@
 domain = neutron
 
 [update_catalog]
-domain = neutron
-output_dir = neutron/locale
-input_file = neutron/locale/neutron_tempest_plugin.pot
+domain = neutron_tempest_plugin
+output_dir = neutron_tempest_plugin/locale
+input_file = neutron_tempest_plugin/locale/neutron_tempest_plugin.pot
 
 [extract_messages]
 keywords = _ gettext ngettext l_ lazy_gettext
 mapping_file = babel.cfg
-output_file = neutron/locale/neutron_tempest_plugin.pot
+output_file = neutron_tempest_plugin/locale/neutron_tempest_plugin.pot
 
 [entry_points]
 tempest.test_plugins =
-    neutron_tests = neutron.tests.tempest.plugin:NeutronTempestPlugin
+    neutron_tests = neutron_tempest_plugin.plugin:NeutronTempestPlugin
diff --git a/tox.ini b/tox.ini
index c888992..74c85e5 100644
--- a/tox.ini
+++ b/tox.ini
@@ -32,9 +32,22 @@
 commands = oslo_debug_helper {posargs}
 
 [flake8]
-# E123, E125 skipped as they are invalid PEP-8.
-
-show-source = True
-ignore = E123,E125
-builtins = _
-exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
+# E125 continuation line does not distinguish itself from next logical line
+# E126 continuation line over-indented for hanging indent
+# E128 continuation line under-indented for visual indent
+# E129 visually indented line with same indent as next logical line
+# E265 block comment should start with '# '
+# H404 multi line docstring should start with a summary
+# H405 multi line docstring summary not separated with an empty line
+# N530 direct neutron imports not allowed
+# TODO(ihrachys) figure out what to do with N534 and N536
+# N534 Untranslated exception message
+# N536 Use assertIsNone rather than assertEqual to check for None values
+ignore = E125,E126,E128,E129,E265,H404,H405,N530,N534,N536
+# H106: Don't put vim configuration in source files
+# H203: Use assertIs(Not)None to check for None
+# H904: Delay string interpolations at logging calls
+enable-extensions=H106,H203,H904
+show-source = true
+exclude = ./.*,build,dist,doc
+import-order-style = pep8
