diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..7693c17
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*.pyc
+*.swp
+*~
+.tox
+.testrepository
diff --git a/.gitreview b/.gitreview
new file mode 100644
index 0000000..9c33d46
--- /dev/null
+++ b/.gitreview
@@ -0,0 +1,5 @@
+
+[gerrit]
+host=review.openstack.org
+port=29418
+project=openstack/heat-tempest-plugin.git
diff --git a/.testr.conf b/.testr.conf
new file mode 100644
index 0000000..b1f68d6
--- /dev/null
+++ b/.testr.conf
@@ -0,0 +1,12 @@
+[DEFAULT]
+test_command=OS_STDOUT_CAPTURE=${OS_STDOUT_CAPTURE:-1} \
+             OS_STDERR_CAPTURE=${OS_STDERR_CAPTURE:-1} \
+             OS_LOG_CAPTURE=${OS_LOG_CAPTURE:-1} \
+             OS_DEBUG=${OS_DEBUG:-1} \
+             OS_TEST_TIMEOUT=${OS_TEST_TIMEOUT:-500} \
+             OS_TEST_LOCK_PATH=${OS_TEST_LOCK_PATH:-${TMPDIR:-'/tmp'}} \
+             ${PYTHON:-python} -m subunit.run discover -t ${OS_TOP_LEVEL:-./} ${OS_TEST_PATH:-./heat_tempest_plugin} $LISTOPT $IDOPTION
+
+test_id_option=--load-list $IDFILE
+test_list_option=--list
+group_regex=([^\.]*\.)*
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..bf9bba5
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,28 @@
+===================
+Heat Tempest Plugin
+===================
+
+Tests can be run as a tempest plugin against any heat-enabled OpenStack
+cloud, however defaults match running against a recent DevStack.
+
+To run the tests against DevStack, do the following:
+
+    # Define DEST
+
+    export DEST=/opt/stack
+
+    # create test resources and write tempest config
+
+    $DEST/heat/heat_integrationtests/prepare_test_env.sh
+
+    $DEST/heat/heat_integrationtests/prepare_test_network.sh
+
+    # run tempest selecting only these tests
+
+    cd $DEST/tempest
+
+    tempest run --regex heat_tempest_plugin.tests
+
+If custom configuration is required, edit the [orchestration_plugin] section of
+
+    $DEST/tempest/etc/tempest.conf
diff --git a/common/__init__.py b/heat_tempest_plugin/__init__.py
similarity index 100%
copy from common/__init__.py
copy to heat_tempest_plugin/__init__.py
diff --git a/common/__init__.py b/heat_tempest_plugin/common/__init__.py
similarity index 100%
rename from common/__init__.py
rename to heat_tempest_plugin/common/__init__.py
diff --git a/common/exceptions.py b/heat_tempest_plugin/common/exceptions.py
similarity index 100%
rename from common/exceptions.py
rename to heat_tempest_plugin/common/exceptions.py
diff --git a/common/remote_client.py b/heat_tempest_plugin/common/remote_client.py
similarity index 98%
rename from common/remote_client.py
rename to heat_tempest_plugin/common/remote_client.py
index 201b10f..f23622b 100644
--- a/common/remote_client.py
+++ b/heat_tempest_plugin/common/remote_client.py
@@ -19,7 +19,7 @@
 import paramiko
 import six
 
-from heat_integrationtests.common import exceptions
+from heat_tempest_plugin.common import exceptions
 
 LOG = logging.getLogger(__name__)
 
diff --git a/common/test.py b/heat_tempest_plugin/common/test.py
similarity index 98%
rename from common/test.py
rename to heat_tempest_plugin/common/test.py
index a6aab7e..64fd1a0 100644
--- a/common/test.py
+++ b/heat_tempest_plugin/common/test.py
@@ -27,10 +27,10 @@
 import testscenarios
 import testtools
 
-from heat_integrationtests.common import clients
-from heat_integrationtests.common import config
-from heat_integrationtests.common import exceptions
-from heat_integrationtests.common import remote_client
+from heat_tempest_plugin.common import exceptions
+from heat_tempest_plugin.common import remote_client
+from heat_tempest_plugin import config
+from heat_tempest_plugin.services import clients
 
 LOG = logging.getLogger(__name__)
 _LOG_FORMAT = "%(levelname)8s [%(name)s] %(message)s"
@@ -85,7 +85,7 @@
     def setUp(self):
         super(HeatIntegrationTest, self).setUp()
 
-        self.conf = config.CONF.heat_plugin
+        self.conf = config.CONF.orchestration_plugin
 
         self.assertIsNotNone(self.conf.auth_url,
                              'No auth_url configured')
diff --git a/common/config.py b/heat_tempest_plugin/config.py
similarity index 94%
rename from common/config.py
rename to heat_tempest_plugin/config.py
index eddac01..65b870d 100644
--- a/common/config.py
+++ b/heat_tempest_plugin/config.py
@@ -18,12 +18,12 @@
                                        title="Available OpenStack Services")
 
 ServiceAvailableGroup = [
-    cfg.BoolOpt("heat_plugin",
+    cfg.BoolOpt("orchestration_plugin",
                 default=True,
                 help="Whether or not heat is expected to be available"),
 ]
 
-heat_group = cfg.OptGroup(name="heat_plugin",
+heat_group = cfg.OptGroup(name="orchestration_plugin",
                           title="Heat Service Options")
 
 HeatGroup = [
@@ -42,13 +42,13 @@
                secret=True),
     cfg.StrOpt('project_name',
                help="Project name to use for API requests.",
-               deprecated_opts=[cfg.DeprecatedOpt('tenant_name',
-                                                  group='heat_plugin')]),
+               deprecated_opts=[cfg.DeprecatedOpt(
+                   'tenant_name', group='orchestration_plugin')]),
     cfg.StrOpt('admin_project_name',
                default='admin',
                help="Admin project name to use for admin API requests.",
-               deprecated_opts=[cfg.DeprecatedOpt('admin_tenant_name',
-                                                  group='heat_plugin')]),
+               deprecated_opts=[cfg.DeprecatedOpt(
+                   'admin_tenant_name', group='orchestration_plugin')]),
     cfg.StrOpt('auth_url',
                help="Full URI of the OpenStack Identity API (Keystone)."),
     cfg.StrOpt('auth_version',
@@ -101,7 +101,7 @@
                default='public',
                help="Visible floating network name "),
     cfg.StrOpt('boot_config_env',
-               default=('heat_integrationtests/scenario/templates'
+               default=('heat_tempest_plugin/tests/scenario/templates'
                         '/boot_config_none_env.yaml'),
                help="Path to environment file which defines the "
                     "resource type Heat::InstallConfigAgent. Needs to "
diff --git a/heat_tempest_plugin/plugin.py b/heat_tempest_plugin/plugin.py
new file mode 100644
index 0000000..0938b43
--- /dev/null
+++ b/heat_tempest_plugin/plugin.py
@@ -0,0 +1,41 @@
+# Copyright 2015
+# All Rights Reserved.
+#
+#    Licensed under the Apache License, Version 2.0 (the "License"); you may
+#    not use this file except in compliance with the License. You may obtain
+#    a copy of the License at
+#
+#         http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+#    License for the specific language governing permissions and limitations
+#    under the License.
+
+import os
+
+from tempest import config
+from tempest.test_discover import plugins
+
+from heat_tempest_plugin import config as heat_config
+
+
+class HeatTempestPlugin(plugins.TempestPlugin):
+    def load_tests(self):
+        base_path = os.path.split(os.path.dirname(
+            os.path.abspath(__file__)))[0]
+        test_dir = "heat_tempest_plugin"
+        full_test_dir = os.path.join(base_path, test_dir)
+        return full_test_dir, base_path
+
+    def register_opts(self, conf):
+        config.register_opt_group(conf, heat_config.service_available_group,
+                                  heat_config.ServiceAvailableGroup)
+        config.register_opt_group(conf, heat_config.heat_group,
+                                  heat_config.HeatGroup)
+        heat_config.CONF = config.CONF
+
+    def get_opt_lists(self):
+        return [(heat_config.heat_group.name,
+                 heat_config.HeatGroup)]
diff --git a/api/__init__.py b/heat_tempest_plugin/services/__init__.py
similarity index 100%
copy from api/__init__.py
copy to heat_tempest_plugin/services/__init__.py
diff --git a/common/clients.py b/heat_tempest_plugin/services/clients.py
similarity index 95%
rename from common/clients.py
rename to heat_tempest_plugin/services/clients.py
index 48db671..ffd5b78 100644
--- a/common/clients.py
+++ b/heat_tempest_plugin/services/clients.py
@@ -14,7 +14,6 @@
 
 from ceilometerclient import client as ceilometer_client
 from cinderclient import client as cinder_client
-from heat.common.i18n import _
 from heatclient import client as heat_client
 from keystoneauth1 import exceptions as kc_exceptions
 from keystoneauth1.identity.generic import password
@@ -73,11 +72,7 @@
 
         self.auth_version = self.conf.auth_version
         if not self.auth_version:
-            try:
-                self.auth_version = self.conf.auth_url.split('/v')[1]
-            except IndexError:
-                raise ValueError(_('Please specify version in auth_url or '
-                                   'auth_version in config.'))
+            self.auth_version = self.conf.auth_url.split('/v')[1]
         self.insecure = self.conf.disable_ssl_certificate_validation
         self.ca_file = self.conf.ca_file
 
diff --git a/api/__init__.py b/heat_tempest_plugin/tests/__init__.py
similarity index 100%
copy from api/__init__.py
copy to heat_tempest_plugin/tests/__init__.py
diff --git a/api/__init__.py b/heat_tempest_plugin/tests/api/__init__.py
similarity index 100%
rename from api/__init__.py
rename to heat_tempest_plugin/tests/api/__init__.py
diff --git a/api/gabbits/environments.yaml b/heat_tempest_plugin/tests/api/gabbits/environments.yaml
similarity index 100%
rename from api/gabbits/environments.yaml
rename to heat_tempest_plugin/tests/api/gabbits/environments.yaml
diff --git a/api/gabbits/resources.yaml b/heat_tempest_plugin/tests/api/gabbits/resources.yaml
similarity index 100%
rename from api/gabbits/resources.yaml
rename to heat_tempest_plugin/tests/api/gabbits/resources.yaml
diff --git a/api/gabbits/resourcetypes.yaml b/heat_tempest_plugin/tests/api/gabbits/resourcetypes.yaml
similarity index 100%
rename from api/gabbits/resourcetypes.yaml
rename to heat_tempest_plugin/tests/api/gabbits/resourcetypes.yaml
diff --git a/api/gabbits/stacks.yaml b/heat_tempest_plugin/tests/api/gabbits/stacks.yaml
similarity index 100%
rename from api/gabbits/stacks.yaml
rename to heat_tempest_plugin/tests/api/gabbits/stacks.yaml
diff --git a/api/gabbits/templates.yaml b/heat_tempest_plugin/tests/api/gabbits/templates.yaml
similarity index 100%
rename from api/gabbits/templates.yaml
rename to heat_tempest_plugin/tests/api/gabbits/templates.yaml
diff --git a/api/test_heat_api.py b/heat_tempest_plugin/tests/api/test_heat_api.py
similarity index 88%
rename from api/test_heat_api.py
rename to heat_tempest_plugin/tests/api/test_heat_api.py
index 2e219e7..091edb3 100644
--- a/api/test_heat_api.py
+++ b/heat_tempest_plugin/tests/api/test_heat_api.py
@@ -18,9 +18,9 @@
 from gabbi import driver
 from six.moves.urllib import parse as urlparse
 
-from heat_integrationtests.common import clients
-from heat_integrationtests.common import config
-from heat_integrationtests.common import test
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin import config
+from heat_tempest_plugin.services import clients
 
 TESTS_DIR = 'gabbits'
 
@@ -29,7 +29,7 @@
     """Provide a TestSuite to the discovery process."""
     test_dir = os.path.join(os.path.dirname(__file__), TESTS_DIR)
 
-    conf = config.CONF.heat_plugin
+    conf = config.CONF.orchestration_plugin
     if conf.auth_url is None:
         # It's not configured, let's not load tests
         return
diff --git a/functional/__init__.py b/heat_tempest_plugin/tests/functional/__init__.py
similarity index 100%
rename from functional/__init__.py
rename to heat_tempest_plugin/tests/functional/__init__.py
diff --git a/functional/functional_base.py b/heat_tempest_plugin/tests/functional/functional_base.py
similarity index 96%
rename from functional/functional_base.py
rename to heat_tempest_plugin/tests/functional/functional_base.py
index 73ccf1d..c9d82b6 100644
--- a/functional/functional_base.py
+++ b/heat_tempest_plugin/tests/functional/functional_base.py
@@ -12,7 +12,7 @@
 
 from oslo_utils import reflection
 
-from heat_integrationtests.common import test
+from heat_tempest_plugin.common import test
 
 
 class FunctionalTestsBase(test.HeatIntegrationTest):
diff --git a/functional/test_admin_actions.py b/heat_tempest_plugin/tests/functional/test_admin_actions.py
similarity index 97%
rename from functional/test_admin_actions.py
rename to heat_tempest_plugin/tests/functional/test_admin_actions.py
index 2c9ff6e..757b03c 100644
--- a/functional/test_admin_actions.py
+++ b/heat_tempest_plugin/tests/functional/test_admin_actions.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 # Simple stack
 test_template = {
diff --git a/functional/test_autoscaling.py b/heat_tempest_plugin/tests/functional/test_autoscaling.py
similarity index 99%
rename from functional/test_autoscaling.py
rename to heat_tempest_plugin/tests/functional/test_autoscaling.py
index 369fa00..d266646 100644
--- a/functional/test_autoscaling.py
+++ b/heat_tempest_plugin/tests/functional/test_autoscaling.py
@@ -18,8 +18,8 @@
 import six
 from testtools import matchers
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 LOG = logging.getLogger(__name__)
diff --git a/functional/test_aws_stack.py b/heat_tempest_plugin/tests/functional/test_aws_stack.py
similarity index 98%
rename from functional/test_aws_stack.py
rename to heat_tempest_plugin/tests/functional/test_aws_stack.py
index 05539dc..03beb1f 100644
--- a/functional/test_aws_stack.py
+++ b/heat_tempest_plugin/tests/functional/test_aws_stack.py
@@ -18,8 +18,8 @@
 from swiftclient import utils as swiftclient_utils
 import yaml
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class AwsStackTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_cancel_update.py b/heat_tempest_plugin/tests/functional/test_cancel_update.py
similarity index 96%
rename from functional/test_cancel_update.py
rename to heat_tempest_plugin/tests/functional/test_cancel_update.py
index bfeeda6..4a8938a 100644
--- a/functional/test_cancel_update.py
+++ b/heat_tempest_plugin/tests/functional/test_cancel_update.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class CancelUpdateTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_conditional_exposure.py b/heat_tempest_plugin/tests/functional/test_conditional_exposure.py
similarity index 98%
rename from functional/test_conditional_exposure.py
rename to heat_tempest_plugin/tests/functional/test_conditional_exposure.py
index 9d0f838..dd4329b 100644
--- a/functional/test_conditional_exposure.py
+++ b/heat_tempest_plugin/tests/functional/test_conditional_exposure.py
@@ -13,7 +13,7 @@
 from heatclient import exc
 import keystoneclient
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ServiceBasedExposureTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_conditions.py b/heat_tempest_plugin/tests/functional/test_conditions.py
similarity index 99%
rename from functional/test_conditions.py
rename to heat_tempest_plugin/tests/functional/test_conditions.py
index ebb3c08..106a4ca 100644
--- a/functional/test_conditions.py
+++ b/heat_tempest_plugin/tests/functional/test_conditions.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 cfn_template = '''
diff --git a/functional/test_create_update.py b/heat_tempest_plugin/tests/functional/test_create_update.py
similarity index 99%
rename from functional/test_create_update.py
rename to heat_tempest_plugin/tests/functional/test_create_update.py
index 3d4ca76..46b1837 100644
--- a/functional/test_create_update.py
+++ b/heat_tempest_plugin/tests/functional/test_create_update.py
@@ -14,8 +14,8 @@
 import copy
 import json
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 test_template_one_resource = {
     'heat_template_version': 'pike',
diff --git a/functional/test_create_update_neutron_port.py b/heat_tempest_plugin/tests/functional/test_create_update_neutron_port.py
similarity index 97%
rename from functional/test_create_update_neutron_port.py
rename to heat_tempest_plugin/tests/functional/test_create_update_neutron_port.py
index bd39bf4..72cd47c 100644
--- a/functional/test_create_update_neutron_port.py
+++ b/heat_tempest_plugin/tests/functional/test_create_update_neutron_port.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 test_template = '''
diff --git a/functional/test_create_update_neutron_subnet.py b/heat_tempest_plugin/tests/functional/test_create_update_neutron_subnet.py
similarity index 98%
rename from functional/test_create_update_neutron_subnet.py
rename to heat_tempest_plugin/tests/functional/test_create_update_neutron_subnet.py
index 31ad6f5..345a740 100644
--- a/functional/test_create_update_neutron_subnet.py
+++ b/heat_tempest_plugin/tests/functional/test_create_update_neutron_subnet.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 test_template = '''
diff --git a/functional/test_create_update_neutron_trunk.py b/heat_tempest_plugin/tests/functional/test_create_update_neutron_trunk.py
similarity index 99%
rename from functional/test_create_update_neutron_trunk.py
rename to heat_tempest_plugin/tests/functional/test_create_update_neutron_trunk.py
index b5a108a..d572405 100644
--- a/functional/test_create_update_neutron_trunk.py
+++ b/heat_tempest_plugin/tests/functional/test_create_update_neutron_trunk.py
@@ -15,7 +15,7 @@
 import copy
 import yaml
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 test_template = '''
diff --git a/functional/test_default_parameters.py b/heat_tempest_plugin/tests/functional/test_default_parameters.py
similarity index 97%
rename from functional/test_default_parameters.py
rename to heat_tempest_plugin/tests/functional/test_default_parameters.py
index aa2ca35..24aa6e4 100644
--- a/functional/test_default_parameters.py
+++ b/heat_tempest_plugin/tests/functional/test_default_parameters.py
@@ -12,7 +12,7 @@
 
 import yaml
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class DefaultParametersTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_delete.py b/heat_tempest_plugin/tests/functional/test_delete.py
similarity index 94%
rename from functional/test_delete.py
rename to heat_tempest_plugin/tests/functional/test_delete.py
index 92b1c74..20266d6 100644
--- a/functional/test_delete.py
+++ b/heat_tempest_plugin/tests/functional/test_delete.py
@@ -12,7 +12,7 @@
 
 import time
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class DeleteInProgressTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_encrypted_parameter.py b/heat_tempest_plugin/tests/functional/test_encrypted_parameter.py
similarity index 96%
rename from functional/test_encrypted_parameter.py
rename to heat_tempest_plugin/tests/functional/test_encrypted_parameter.py
index 5ec8a27..bfbd77b 100644
--- a/functional/test_encrypted_parameter.py
+++ b/heat_tempest_plugin/tests/functional/test_encrypted_parameter.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class EncryptedParametersTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_encryption_vol_type.py b/heat_tempest_plugin/tests/functional/test_encryption_vol_type.py
similarity index 97%
rename from functional/test_encryption_vol_type.py
rename to heat_tempest_plugin/tests/functional/test_encryption_vol_type.py
index b34b094..2b98022 100644
--- a/functional/test_encryption_vol_type.py
+++ b/heat_tempest_plugin/tests/functional/test_encryption_vol_type.py
@@ -11,7 +11,7 @@
 #    under the License.
 
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 test_encryption_vol_type = {
     'heat_template_version': '2015-04-30',
diff --git a/functional/test_env_merge.py b/heat_tempest_plugin/tests/functional/test_env_merge.py
similarity index 97%
rename from functional/test_env_merge.py
rename to heat_tempest_plugin/tests/functional/test_env_merge.py
index 819770a..68ec035 100644
--- a/functional/test_env_merge.py
+++ b/heat_tempest_plugin/tests/functional/test_env_merge.py
@@ -11,7 +11,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 TEMPLATE = '''
diff --git a/functional/test_event_sinks.py b/heat_tempest_plugin/tests/functional/test_event_sinks.py
similarity index 96%
rename from functional/test_event_sinks.py
rename to heat_tempest_plugin/tests/functional/test_event_sinks.py
index 61f1bfa..a6e59eb 100644
--- a/functional/test_event_sinks.py
+++ b/heat_tempest_plugin/tests/functional/test_event_sinks.py
@@ -14,8 +14,8 @@
 
 from zaqarclient.queues.v2 import client as zaqarclient
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ZaqarEventSinkTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_external_ref.py b/heat_tempest_plugin/tests/functional/test_external_ref.py
similarity index 97%
rename from functional/test_external_ref.py
rename to heat_tempest_plugin/tests/functional/test_external_ref.py
index 2601ca7..c54e453 100644
--- a/functional/test_external_ref.py
+++ b/heat_tempest_plugin/tests/functional/test_external_ref.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ExternalReferencesTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_heat_autoscaling.py b/heat_tempest_plugin/tests/functional/test_heat_autoscaling.py
similarity index 98%
rename from functional/test_heat_autoscaling.py
rename to heat_tempest_plugin/tests/functional/test_heat_autoscaling.py
index 474e1c3..a83c7fe 100644
--- a/functional/test_heat_autoscaling.py
+++ b/heat_tempest_plugin/tests/functional/test_heat_autoscaling.py
@@ -10,8 +10,8 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class HeatAutoscalingTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_hooks.py b/heat_tempest_plugin/tests/functional/test_hooks.py
similarity index 99%
rename from functional/test_hooks.py
rename to heat_tempest_plugin/tests/functional/test_hooks.py
index bafb0ef..78c58f3 100644
--- a/functional/test_hooks.py
+++ b/heat_tempest_plugin/tests/functional/test_hooks.py
@@ -12,7 +12,7 @@
 
 import yaml
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class HooksTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_immutable_parameters.py b/heat_tempest_plugin/tests/functional/test_immutable_parameters.py
similarity index 98%
rename from functional/test_immutable_parameters.py
rename to heat_tempest_plugin/tests/functional/test_immutable_parameters.py
index d223b14..f031c01 100644
--- a/functional/test_immutable_parameters.py
+++ b/heat_tempest_plugin/tests/functional/test_immutable_parameters.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 from heatclient import exc as heat_exceptions
 
 
diff --git a/functional/test_instance_group.py b/heat_tempest_plugin/tests/functional/test_instance_group.py
similarity index 99%
rename from functional/test_instance_group.py
rename to heat_tempest_plugin/tests/functional/test_instance_group.py
index 44b3aa9..c0bb7e8 100644
--- a/functional/test_instance_group.py
+++ b/heat_tempest_plugin/tests/functional/test_instance_group.py
@@ -15,7 +15,7 @@
 
 from testtools import matchers
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class InstanceGroupTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_lbaasv2.py b/heat_tempest_plugin/tests/functional/test_lbaasv2.py
similarity index 98%
rename from functional/test_lbaasv2.py
rename to heat_tempest_plugin/tests/functional/test_lbaasv2.py
index e7f56ef..e33c5b9 100644
--- a/functional/test_lbaasv2.py
+++ b/heat_tempest_plugin/tests/functional/test_lbaasv2.py
@@ -11,7 +11,7 @@
 #    under the License.
 
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class LoadBalancerv2Test(functional_base.FunctionalTestsBase):
diff --git a/functional/test_nested_get_attr.py b/heat_tempest_plugin/tests/functional/test_nested_get_attr.py
similarity index 98%
rename from functional/test_nested_get_attr.py
rename to heat_tempest_plugin/tests/functional/test_nested_get_attr.py
index fff89a4..57f65e2 100644
--- a/functional/test_nested_get_attr.py
+++ b/heat_tempest_plugin/tests/functional/test_nested_get_attr.py
@@ -16,7 +16,7 @@
 # where the get_attr calls are used. Nevertheless, it did sort-of work, and
 # this test will help keep it that way.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 initial_template = '''
diff --git a/functional/test_notifications.py b/heat_tempest_plugin/tests/functional/test_notifications.py
similarity index 97%
rename from functional/test_notifications.py
rename to heat_tempest_plugin/tests/functional/test_notifications.py
index 69029a7..7a74cdb 100644
--- a/functional/test_notifications.py
+++ b/heat_tempest_plugin/tests/functional/test_notifications.py
@@ -16,8 +16,8 @@
 from oslo_messaging import transport
 import requests
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 BASIC_NOTIFICATIONS = [
     'orchestration.stack.create.start',
diff --git a/functional/test_nova_server_networks.py b/heat_tempest_plugin/tests/functional/test_nova_server_networks.py
similarity index 98%
rename from functional/test_nova_server_networks.py
rename to heat_tempest_plugin/tests/functional/test_nova_server_networks.py
index 9b6b5e6..c0baeb4 100644
--- a/functional/test_nova_server_networks.py
+++ b/heat_tempest_plugin/tests/functional/test_nova_server_networks.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 server_with_sub_fixed_ip_template = '''
diff --git a/functional/test_os_wait_condition.py b/heat_tempest_plugin/tests/functional/test_os_wait_condition.py
similarity index 97%
rename from functional/test_os_wait_condition.py
rename to heat_tempest_plugin/tests/functional/test_os_wait_condition.py
index 5c1783a..e19be4f 100644
--- a/functional/test_os_wait_condition.py
+++ b/heat_tempest_plugin/tests/functional/test_os_wait_condition.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class OSWaitCondition(functional_base.FunctionalTestsBase):
diff --git a/functional/test_preview.py b/heat_tempest_plugin/tests/functional/test_preview.py
similarity index 98%
rename from functional/test_preview.py
rename to heat_tempest_plugin/tests/functional/test_preview.py
index 54f8a79..b1779dc 100644
--- a/functional/test_preview.py
+++ b/heat_tempest_plugin/tests/functional/test_preview.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 from heatclient import exc
 import six
 
diff --git a/functional/test_preview_update.py b/heat_tempest_plugin/tests/functional/test_preview_update.py
similarity index 98%
rename from functional/test_preview_update.py
rename to heat_tempest_plugin/tests/functional/test_preview_update.py
index 971e9c5..a4d293f 100644
--- a/functional/test_preview_update.py
+++ b/heat_tempest_plugin/tests/functional/test_preview_update.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 test_template_one_resource = {
     'heat_template_version': '2013-05-23',
diff --git a/functional/test_purge.py b/heat_tempest_plugin/tests/functional/test_purge.py
similarity index 96%
rename from functional/test_purge.py
rename to heat_tempest_plugin/tests/functional/test_purge.py
index fd652a9..1dd4ff8 100644
--- a/functional/test_purge.py
+++ b/heat_tempest_plugin/tests/functional/test_purge.py
@@ -14,7 +14,7 @@
 
 from oslo_concurrency import processutils
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class PurgeTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_reload_on_sighup.py b/heat_tempest_plugin/tests/functional/test_reload_on_sighup.py
similarity index 98%
rename from functional/test_reload_on_sighup.py
rename to heat_tempest_plugin/tests/functional/test_reload_on_sighup.py
index f87669c..81da958 100644
--- a/functional/test_reload_on_sighup.py
+++ b/heat_tempest_plugin/tests/functional/test_reload_on_sighup.py
@@ -19,7 +19,7 @@
 from oslo_concurrency import processutils
 from six.moves import configparser
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ReloadOnSighupTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_remote_stack.py b/heat_tempest_plugin/tests/functional/test_remote_stack.py
similarity index 98%
rename from functional/test_remote_stack.py
rename to heat_tempest_plugin/tests/functional/test_remote_stack.py
index b82958c..4c53933 100644
--- a/functional/test_remote_stack.py
+++ b/heat_tempest_plugin/tests/functional/test_remote_stack.py
@@ -14,7 +14,7 @@
 from heatclient import exc
 import six
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class RemoteStackTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_replace_deprecated.py b/heat_tempest_plugin/tests/functional/test_replace_deprecated.py
similarity index 97%
rename from functional/test_replace_deprecated.py
rename to heat_tempest_plugin/tests/functional/test_replace_deprecated.py
index 5e7fdc6..0eee3f1 100644
--- a/functional/test_replace_deprecated.py
+++ b/heat_tempest_plugin/tests/functional/test_replace_deprecated.py
@@ -12,7 +12,7 @@
 
 import yaml
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ReplaceDeprecatedResourceTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_resource_chain.py b/heat_tempest_plugin/tests/functional/test_resource_chain.py
similarity index 98%
rename from functional/test_resource_chain.py
rename to heat_tempest_plugin/tests/functional/test_resource_chain.py
index 2898ebe..06ec8ff 100644
--- a/functional/test_resource_chain.py
+++ b/heat_tempest_plugin/tests/functional/test_resource_chain.py
@@ -11,7 +11,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 TEMPLATE_SIMPLE = '''
diff --git a/functional/test_resource_group.py b/heat_tempest_plugin/tests/functional/test_resource_group.py
similarity index 99%
rename from functional/test_resource_group.py
rename to heat_tempest_plugin/tests/functional/test_resource_group.py
index 3f47ca5..aea1bda 100644
--- a/functional/test_resource_group.py
+++ b/heat_tempest_plugin/tests/functional/test_resource_group.py
@@ -17,7 +17,7 @@
 import six
 import yaml
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ResourceGroupTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_resources_list.py b/heat_tempest_plugin/tests/functional/test_resources_list.py
similarity index 95%
rename from functional/test_resources_list.py
rename to heat_tempest_plugin/tests/functional/test_resources_list.py
index f57cf67..0a182ad 100644
--- a/functional/test_resources_list.py
+++ b/heat_tempest_plugin/tests/functional/test_resources_list.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 test_template_depend = {
diff --git a/functional/test_simultaneous_update.py b/heat_tempest_plugin/tests/functional/test_simultaneous_update.py
similarity index 100%
rename from functional/test_simultaneous_update.py
rename to heat_tempest_plugin/tests/functional/test_simultaneous_update.py
diff --git a/functional/test_snapshot_restore.py b/heat_tempest_plugin/tests/functional/test_snapshot_restore.py
similarity index 97%
rename from functional/test_snapshot_restore.py
rename to heat_tempest_plugin/tests/functional/test_snapshot_restore.py
index f63a360..3616c8f 100644
--- a/functional/test_snapshot_restore.py
+++ b/heat_tempest_plugin/tests/functional/test_snapshot_restore.py
@@ -11,7 +11,7 @@
 #    under the License.
 
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackSnapshotRestoreTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_software_config.py b/heat_tempest_plugin/tests/functional/test_software_config.py
similarity index 97%
rename from functional/test_software_config.py
rename to heat_tempest_plugin/tests/functional/test_software_config.py
index 8c1cd53..2f31b29 100644
--- a/functional/test_software_config.py
+++ b/heat_tempest_plugin/tests/functional/test_software_config.py
@@ -21,9 +21,9 @@
 
 from oslo_utils import timeutils
 
-from heat_integrationtests.common import exceptions
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import exceptions
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ParallelDeploymentsTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_software_deployment_group.py b/heat_tempest_plugin/tests/functional/test_software_deployment_group.py
similarity index 98%
rename from functional/test_software_deployment_group.py
rename to heat_tempest_plugin/tests/functional/test_software_deployment_group.py
index 22143dc..a298419 100644
--- a/functional/test_software_deployment_group.py
+++ b/heat_tempest_plugin/tests/functional/test_software_deployment_group.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class SoftwareDeploymentGroupTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_stack_events.py b/heat_tempest_plugin/tests/functional/test_stack_events.py
similarity index 98%
rename from functional/test_stack_events.py
rename to heat_tempest_plugin/tests/functional/test_stack_events.py
index d5a7fad..0db852e 100644
--- a/functional/test_stack_events.py
+++ b/heat_tempest_plugin/tests/functional/test_stack_events.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackEventsTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_stack_outputs.py b/heat_tempest_plugin/tests/functional/test_stack_outputs.py
similarity index 98%
rename from functional/test_stack_outputs.py
rename to heat_tempest_plugin/tests/functional/test_stack_outputs.py
index b7d7cd6..f629a97 100644
--- a/functional/test_stack_outputs.py
+++ b/heat_tempest_plugin/tests/functional/test_stack_outputs.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackOutputsTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_stack_tags.py b/heat_tempest_plugin/tests/functional/test_stack_tags.py
similarity index 96%
rename from functional/test_stack_tags.py
rename to heat_tempest_plugin/tests/functional/test_stack_tags.py
index 4a97798..a270950 100644
--- a/functional/test_stack_tags.py
+++ b/heat_tempest_plugin/tests/functional/test_stack_tags.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackTagTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_swiftsignal_update.py b/heat_tempest_plugin/tests/functional/test_swiftsignal_update.py
similarity index 95%
rename from functional/test_swiftsignal_update.py
rename to heat_tempest_plugin/tests/functional/test_swiftsignal_update.py
index 9e656b1..604e592 100644
--- a/functional/test_swiftsignal_update.py
+++ b/heat_tempest_plugin/tests/functional/test_swiftsignal_update.py
@@ -11,7 +11,7 @@
 #    under the License.
 
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 test_template = '''
 heat_template_version: 2014-10-16
diff --git a/functional/test_template_resource.py b/heat_tempest_plugin/tests/functional/test_template_resource.py
similarity index 99%
rename from functional/test_template_resource.py
rename to heat_tempest_plugin/tests/functional/test_template_resource.py
index c05912c..a7cc808 100644
--- a/functional/test_template_resource.py
+++ b/heat_tempest_plugin/tests/functional/test_template_resource.py
@@ -16,8 +16,8 @@
 import six
 import yaml
 
-from heat_integrationtests.common import test
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class TemplateResourceTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_template_validate.py b/heat_tempest_plugin/tests/functional/test_template_validate.py
similarity index 98%
rename from functional/test_template_validate.py
rename to heat_tempest_plugin/tests/functional/test_template_validate.py
index e62c31b..4694a82 100644
--- a/functional/test_template_validate.py
+++ b/heat_tempest_plugin/tests/functional/test_template_validate.py
@@ -15,7 +15,7 @@
 
 from heatclient import exc
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackTemplateValidateTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_templates.py b/heat_tempest_plugin/tests/functional/test_templates.py
similarity index 97%
rename from functional/test_templates.py
rename to heat_tempest_plugin/tests/functional/test_templates.py
index 398af5e..bfcf8bf 100644
--- a/functional/test_templates.py
+++ b/heat_tempest_plugin/tests/functional/test_templates.py
@@ -11,7 +11,7 @@
 #    under the License.
 
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class TemplateAPITest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_translation.py b/heat_tempest_plugin/tests/functional/test_translation.py
similarity index 97%
rename from functional/test_translation.py
rename to heat_tempest_plugin/tests/functional/test_translation.py
index ff20ab5..484663b 100644
--- a/functional/test_translation.py
+++ b/heat_tempest_plugin/tests/functional/test_translation.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 template_subnet_old_network = """
 heat_template_version: 2016-10-14
diff --git a/functional/test_unicode_template.py b/heat_tempest_plugin/tests/functional/test_unicode_template.py
similarity index 98%
rename from functional/test_unicode_template.py
rename to heat_tempest_plugin/tests/functional/test_unicode_template.py
index 32c02a5..d3363aa 100644
--- a/functional/test_unicode_template.py
+++ b/heat_tempest_plugin/tests/functional/test_unicode_template.py
@@ -10,7 +10,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackUnicodeTemplateTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_update_restricted.py b/heat_tempest_plugin/tests/functional/test_update_restricted.py
similarity index 98%
rename from functional/test_update_restricted.py
rename to heat_tempest_plugin/tests/functional/test_update_restricted.py
index 7087c0c..83cb280 100644
--- a/functional/test_update_restricted.py
+++ b/heat_tempest_plugin/tests/functional/test_update_restricted.py
@@ -12,7 +12,7 @@
 
 import time
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 test_template = {
     'heat_template_version': '2013-05-23',
diff --git a/functional/test_validation.py b/heat_tempest_plugin/tests/functional/test_validation.py
similarity index 97%
rename from functional/test_validation.py
rename to heat_tempest_plugin/tests/functional/test_validation.py
index da5cd68..ab1762e 100644
--- a/functional/test_validation.py
+++ b/heat_tempest_plugin/tests/functional/test_validation.py
@@ -11,7 +11,7 @@
 #    under the License.
 
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class StackValidationTest(functional_base.FunctionalTestsBase):
diff --git a/functional/test_waitcondition.py b/heat_tempest_plugin/tests/functional/test_waitcondition.py
similarity index 97%
rename from functional/test_waitcondition.py
rename to heat_tempest_plugin/tests/functional/test_waitcondition.py
index f79d49b..84d8ef1 100644
--- a/functional/test_waitcondition.py
+++ b/heat_tempest_plugin/tests/functional/test_waitcondition.py
@@ -15,7 +15,7 @@
 from keystoneclient.v3 import client as keystoneclient
 from zaqarclient.queues.v2 import client as zaqarclient
 
-from heat_integrationtests.functional import functional_base
+from heat_tempest_plugin.tests.functional import functional_base
 
 
 class ZaqarWaitConditionTest(functional_base.FunctionalTestsBase):
diff --git a/scenario/__init__.py b/heat_tempest_plugin/tests/scenario/__init__.py
similarity index 100%
rename from scenario/__init__.py
rename to heat_tempest_plugin/tests/scenario/__init__.py
diff --git a/scenario/scenario_base.py b/heat_tempest_plugin/tests/scenario/scenario_base.py
similarity index 97%
rename from scenario/scenario_base.py
rename to heat_tempest_plugin/tests/scenario/scenario_base.py
index c48d64d..5cfb5d1 100644
--- a/scenario/scenario_base.py
+++ b/heat_tempest_plugin/tests/scenario/scenario_base.py
@@ -12,7 +12,7 @@
 
 from oslo_utils import reflection
 
-from heat_integrationtests.common import test
+from heat_tempest_plugin.common import test
 
 
 class ScenarioTestsBase(test.HeatIntegrationTest):
diff --git a/scenario/templates/app_server_lbv2_neutron.yaml b/heat_tempest_plugin/tests/scenario/templates/app_server_lbv2_neutron.yaml
similarity index 100%
rename from scenario/templates/app_server_lbv2_neutron.yaml
rename to heat_tempest_plugin/tests/scenario/templates/app_server_lbv2_neutron.yaml
diff --git a/scenario/templates/app_server_neutron.yaml b/heat_tempest_plugin/tests/scenario/templates/app_server_neutron.yaml
similarity index 100%
rename from scenario/templates/app_server_neutron.yaml
rename to heat_tempest_plugin/tests/scenario/templates/app_server_neutron.yaml
diff --git a/scenario/templates/boot_config_none_env.yaml b/heat_tempest_plugin/tests/scenario/templates/boot_config_none_env.yaml
similarity index 100%
rename from scenario/templates/boot_config_none_env.yaml
rename to heat_tempest_plugin/tests/scenario/templates/boot_config_none_env.yaml
diff --git a/scenario/templates/netcat-webapp.yaml b/heat_tempest_plugin/tests/scenario/templates/netcat-webapp.yaml
similarity index 100%
rename from scenario/templates/netcat-webapp.yaml
rename to heat_tempest_plugin/tests/scenario/templates/netcat-webapp.yaml
diff --git a/scenario/templates/test_aodh_alarm.yaml b/heat_tempest_plugin/tests/scenario/templates/test_aodh_alarm.yaml
similarity index 100%
rename from scenario/templates/test_aodh_alarm.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_aodh_alarm.yaml
diff --git a/scenario/templates/test_autoscaling_lb_neutron.yaml b/heat_tempest_plugin/tests/scenario/templates/test_autoscaling_lb_neutron.yaml
similarity index 100%
rename from scenario/templates/test_autoscaling_lb_neutron.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_autoscaling_lb_neutron.yaml
diff --git a/scenario/templates/test_autoscaling_lbv2_neutron.yaml b/heat_tempest_plugin/tests/scenario/templates/test_autoscaling_lbv2_neutron.yaml
similarity index 100%
rename from scenario/templates/test_autoscaling_lbv2_neutron.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_autoscaling_lbv2_neutron.yaml
diff --git a/scenario/templates/test_base_resources.yaml b/heat_tempest_plugin/tests/scenario/templates/test_base_resources.yaml
similarity index 100%
rename from scenario/templates/test_base_resources.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_base_resources.yaml
diff --git a/scenario/templates/test_server_cfn_init.yaml b/heat_tempest_plugin/tests/scenario/templates/test_server_cfn_init.yaml
similarity index 100%
rename from scenario/templates/test_server_cfn_init.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_server_cfn_init.yaml
diff --git a/scenario/templates/test_server_signal.yaml b/heat_tempest_plugin/tests/scenario/templates/test_server_signal.yaml
similarity index 100%
rename from scenario/templates/test_server_signal.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_server_signal.yaml
diff --git a/scenario/templates/test_server_software_config.yaml b/heat_tempest_plugin/tests/scenario/templates/test_server_software_config.yaml
similarity index 100%
rename from scenario/templates/test_server_software_config.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_server_software_config.yaml
diff --git a/scenario/templates/test_volumes_create_from_backup.yaml b/heat_tempest_plugin/tests/scenario/templates/test_volumes_create_from_backup.yaml
similarity index 100%
rename from scenario/templates/test_volumes_create_from_backup.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_volumes_create_from_backup.yaml
diff --git a/scenario/templates/test_volumes_delete_snapshot.yaml b/heat_tempest_plugin/tests/scenario/templates/test_volumes_delete_snapshot.yaml
similarity index 100%
rename from scenario/templates/test_volumes_delete_snapshot.yaml
rename to heat_tempest_plugin/tests/scenario/templates/test_volumes_delete_snapshot.yaml
diff --git a/scenario/test_aodh_alarm.py b/heat_tempest_plugin/tests/scenario/test_aodh_alarm.py
similarity index 95%
rename from scenario/test_aodh_alarm.py
rename to heat_tempest_plugin/tests/scenario/test_aodh_alarm.py
index 90288a2..ec436de 100644
--- a/scenario/test_aodh_alarm.py
+++ b/heat_tempest_plugin/tests/scenario/test_aodh_alarm.py
@@ -12,8 +12,8 @@
 
 from oslo_log import log as logging
 
-from heat_integrationtests.common import test
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 LOG = logging.getLogger(__name__)
 
diff --git a/scenario/test_autoscaling_lb.py b/heat_tempest_plugin/tests/scenario/test_autoscaling_lb.py
similarity index 97%
rename from scenario/test_autoscaling_lb.py
rename to heat_tempest_plugin/tests/scenario/test_autoscaling_lb.py
index 5e8ad27..e576867 100644
--- a/scenario/test_autoscaling_lb.py
+++ b/heat_tempest_plugin/tests/scenario/test_autoscaling_lb.py
@@ -15,8 +15,8 @@
 
 import requests
 
-from heat_integrationtests.common import test
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 
 class AutoscalingLoadBalancerTest(scenario_base.ScenarioTestsBase):
diff --git a/scenario/test_autoscaling_lbv2.py b/heat_tempest_plugin/tests/scenario/test_autoscaling_lbv2.py
similarity index 97%
rename from scenario/test_autoscaling_lbv2.py
rename to heat_tempest_plugin/tests/scenario/test_autoscaling_lbv2.py
index 4ddc21e..65fa91c 100644
--- a/scenario/test_autoscaling_lbv2.py
+++ b/heat_tempest_plugin/tests/scenario/test_autoscaling_lbv2.py
@@ -15,8 +15,8 @@
 
 import requests
 
-from heat_integrationtests.common import test
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 
 class AutoscalingLoadBalancerv2Test(scenario_base.ScenarioTestsBase):
diff --git a/scenario/test_base_resources.py b/heat_tempest_plugin/tests/scenario/test_base_resources.py
similarity index 95%
rename from scenario/test_base_resources.py
rename to heat_tempest_plugin/tests/scenario/test_base_resources.py
index 80194a0..e63242e 100644
--- a/scenario/test_base_resources.py
+++ b/heat_tempest_plugin/tests/scenario/test_base_resources.py
@@ -10,8 +10,8 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-from heat_integrationtests.common import test
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import test
+from heat_tempest_plugin.tests.scenario import scenario_base
 from heatclient.common import template_utils
 
 
diff --git a/scenario/test_server_cfn_init.py b/heat_tempest_plugin/tests/scenario/test_server_cfn_init.py
similarity index 97%
rename from scenario/test_server_cfn_init.py
rename to heat_tempest_plugin/tests/scenario/test_server_cfn_init.py
index c7d84e3..5ea0fb9 100644
--- a/scenario/test_server_cfn_init.py
+++ b/heat_tempest_plugin/tests/scenario/test_server_cfn_init.py
@@ -12,8 +12,8 @@
 
 import json
 
-from heat_integrationtests.common import exceptions
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import exceptions
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 
 class CfnInitIntegrationTest(scenario_base.ScenarioTestsBase):
diff --git a/scenario/test_server_signal.py b/heat_tempest_plugin/tests/scenario/test_server_signal.py
similarity index 96%
rename from scenario/test_server_signal.py
rename to heat_tempest_plugin/tests/scenario/test_server_signal.py
index b2085e2..e2730dd 100644
--- a/scenario/test_server_signal.py
+++ b/heat_tempest_plugin/tests/scenario/test_server_signal.py
@@ -13,8 +13,8 @@
 
 import json
 
-from heat_integrationtests.common import exceptions
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import exceptions
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 
 class ServerSignalIntegrationTest(scenario_base.ScenarioTestsBase):
diff --git a/scenario/test_server_software_config.py b/heat_tempest_plugin/tests/scenario/test_server_software_config.py
similarity index 98%
rename from scenario/test_server_software_config.py
rename to heat_tempest_plugin/tests/scenario/test_server_software_config.py
index f4c7da5..1546684 100644
--- a/scenario/test_server_software_config.py
+++ b/heat_tempest_plugin/tests/scenario/test_server_software_config.py
@@ -13,7 +13,7 @@
 from heatclient.common import template_utils
 import six
 
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 CFG1_SH = '''#!/bin/sh
 echo "Writing to /tmp/$bar"
diff --git a/scenario/test_volumes.py b/heat_tempest_plugin/tests/scenario/test_volumes.py
similarity index 97%
rename from scenario/test_volumes.py
rename to heat_tempest_plugin/tests/scenario/test_volumes.py
index 47e583d..eea6e97 100644
--- a/scenario/test_volumes.py
+++ b/heat_tempest_plugin/tests/scenario/test_volumes.py
@@ -15,8 +15,8 @@
 from oslo_log import log as logging
 import six
 
-from heat_integrationtests.common import exceptions
-from heat_integrationtests.scenario import scenario_base
+from heat_tempest_plugin.common import exceptions
+from heat_tempest_plugin.tests.scenario import scenario_base
 
 LOG = logging.getLogger(__name__)
 
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000..83d86fd
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,20 @@
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+eventlet!=0.18.3,!=0.20.1,<0.21.0,>=0.18.2 # MIT
+keystoneauth1>=3.2.0 # Apache-2.0
+oslo.config>=4.6.0 # Apache-2.0
+oslo.log>=3.30.0 # Apache-2.0
+paramiko>=2.0.0 # LGPLv2.1+
+python-ceilometerclient>=2.5.0 # Apache-2.0
+python-cinderclient>=3.2.0 # Apache-2.0
+python-heatclient>=1.10.0 # Apache-2.0
+python-neutronclient>=6.3.0 # Apache-2.0
+python-novaclient>=9.1.0 # Apache-2.0
+python-swiftclient>=3.2.0 # Apache-2.0
+python-zaqarclient>=1.0.0 # Apache-2.0
+testtools>=1.4.0 # MIT
+testscenarios>=0.4 # Apache-2.0/BSD
+tempest>=16.1.0 # Apache-2.0
+gabbi>=1.35.0 # Apache-2.0
+kombu!=4.0.2,>=4.0.0 # BSD
diff --git a/setup.cfg b/setup.cfg
new file mode 100644
index 0000000..d08460b
--- /dev/null
+++ b/setup.cfg
@@ -0,0 +1,48 @@
+[metadata]
+name = heat-tempest-plugin
+summary = OpenStack Orchestration Tempest Plugin
+description-file =
+    README.rst
+author = OpenStack
+author-email = openstack-dev@lists.openstack.org
+home-page = http://docs.openstack.org/developer/heat-tempest-plugin
+classifier =
+    Environment :: OpenStack
+    Intended Audience :: Information Technology
+    Intended Audience :: System Administrators
+    License :: OSI Approved :: Apache Software License
+    Operating System :: POSIX :: Linux
+    Programming Language :: Python
+    Programming Language :: Python :: 2
+    Programming Language :: Python :: 2.7
+    Programming Language :: Python :: 3
+    Programming Language :: Python :: 3.5
+
+keywords =
+    setup
+    distutils
+
+[files]
+packages = 
+    heat_tempest_plugin
+
+[entry_points]
+tempest.test_plugins = 
+    heat = heat_tempest_plugin.plugin:HeatTempestPlugin
+
+[global]
+setup-hooks =
+    pbr.hooks.setup_hook
+
+[build_sphinx]
+all_files = 1
+build-dir = doc/build
+source-dir = doc/source
+
+[egg_info]
+tag_build =
+tag_date = 0
+tag_svn_revision = 0
+
+[wheel]
+universal = 1
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..566d844
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,29 @@
+# Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# THIS FILE IS MANAGED BY THE GLOBAL REQUIREMENTS REPO - DO NOT EDIT
+import setuptools
+
+# In python < 2.7.4, a lazy loading of package `pbr` will break
+# setuptools if some other modules registered functions in `atexit`.
+# solution from: http://bugs.python.org/issue15881#msg170215
+try:
+    import multiprocessing  # noqa
+except ImportError:
+    pass
+
+setuptools.setup(
+    setup_requires=['pbr>=2.0.0'],
+    pbr=True)
diff --git a/test-requirements.txt b/test-requirements.txt
new file mode 100644
index 0000000..f3e74e0
--- /dev/null
+++ b/test-requirements.txt
@@ -0,0 +1,8 @@
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+
+# Hacking already pins down pep8, pyflakes and flake8
+hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
+openstackdocstheme>=1.17.0 # Apache-2.0
+sphinx>=1.6.2 # BSD
diff --git a/tox.ini b/tox.ini
new file mode 100644
index 0000000..ece89c6
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,29 @@
+[tox]
+envlist = py27,py35,pep8
+minversion = 0.1
+skipsdist = True
+
+[testenv]
+userdevelop = True
+setenv = VIRTUAL_ENV={envdir}
+deps = -r{toxinidir}/requirements.txt
+       -r{toxinidir}/test-requirements.txt
+commands = bash -c 'if [ ! -d ./.testrepository ] ; then testr init ; fi'
+           testr run {posargs}
+
+[testenv:pep8]
+commands = flake8
+
+[testenv:docs]
+deps = -r{toxinidir}/requirements.txt
+       -r{toxinidir}/test-requirements.txt
+       sphinxcontrib-httpdomain
+commands = python setup.py build_sphinx
+
+[testenv:venv]
+commands = {posargs}
+
+[flake8]
+show-source = True
+builtins = _
+exclude=.venv,.git,.tox,*lib/python*,private,.eggs
