Add initial plugin structure
Creates initial module structure and a dummy test.
Change-Id: I7a861dcc800cf3a49da2e317e4780aa5c5027733
Implements: bp tempest-plugin
diff --git a/barbican_tempest_plugin/README.rst b/barbican_tempest_plugin/README.rst
new file mode 100644
index 0000000..5ef9f68
--- /dev/null
+++ b/barbican_tempest_plugin/README.rst
@@ -0,0 +1,6 @@
+===============================================
+Tempest Integration of Barbican
+===============================================
+
+This directory contains Tempest tests to cover the Barbican project.
+
diff --git a/barbican_tempest_plugin/__init__.py b/barbican_tempest_plugin/__init__.py
new file mode 100644
index 0000000..431fd9b
--- /dev/null
+++ b/barbican_tempest_plugin/__init__.py
@@ -0,0 +1,19 @@
+# -*- coding: utf-8 -*-
+
+# 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 pbr.version
+
+
+__version__ = pbr.version.VersionInfo(
+ 'barbican_tempest_plugin').version_string()
diff --git a/barbican_tempest_plugin/config.py b/barbican_tempest_plugin/config.py
new file mode 100644
index 0000000..4326351
--- /dev/null
+++ b/barbican_tempest_plugin/config.py
@@ -0,0 +1,21 @@
+# Copyright 2016 SAP SE
+# 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.
+
+from oslo_config import cfg
+
+service_option = cfg.BoolOpt("barbican",
+ default=True,
+ help="Whether or not barbican is expected to be "
+ "available")
diff --git a/barbican_tempest_plugin/plugin.py b/barbican_tempest_plugin/plugin.py
new file mode 100644
index 0000000..6cde8ea
--- /dev/null
+++ b/barbican_tempest_plugin/plugin.py
@@ -0,0 +1,37 @@
+# Copyright 2016 SAP SE
+# 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.test_discover import plugins
+
+from barbican_tempest_plugin import config as project_config
+
+
+class BarbicanTempestPlugin(plugins.TempestPlugin):
+ def load_tests(self):
+ base_path = os.path.split(os.path.dirname(
+ os.path.abspath(__file__)))[0]
+ test_dir = "barbican_tempest_plugin/tests"
+ full_test_dir = os.path.join(base_path, test_dir)
+ return full_test_dir, base_path
+
+ def register_opts(self, conf):
+ conf.register_opt(project_config.service_option,
+ group='service_available')
+
+ def get_opt_lists(self):
+ return [('service_available', [project_config.service_option])]
diff --git a/barbican_tempest_plugin/services/__init__.py b/barbican_tempest_plugin/services/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/barbican_tempest_plugin/services/__init__.py
diff --git a/barbican_tempest_plugin/tests/__init__.py b/barbican_tempest_plugin/tests/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/barbican_tempest_plugin/tests/__init__.py
diff --git a/barbican_tempest_plugin/tests/api/__init__.py b/barbican_tempest_plugin/tests/api/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/barbican_tempest_plugin/tests/api/__init__.py
diff --git a/barbican_tempest_plugin/tests/base.py b/barbican_tempest_plugin/tests/base.py
new file mode 100644
index 0000000..1f97635
--- /dev/null
+++ b/barbican_tempest_plugin/tests/base.py
@@ -0,0 +1,20 @@
+# Copyright 2016 SAP SE
+#
+# 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.
+
+from oslotest import base
+
+
+class TestCase(base.BaseTestCase):
+
+ """Test case base class for all unit tests."""
diff --git a/barbican_tempest_plugin/tests/scenario/__init__.py b/barbican_tempest_plugin/tests/scenario/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/barbican_tempest_plugin/tests/scenario/__init__.py
diff --git a/barbican_tempest_plugin/tests/test_barbican_tempest_plugin.py b/barbican_tempest_plugin/tests/test_barbican_tempest_plugin.py
new file mode 100644
index 0000000..dc78b9f
--- /dev/null
+++ b/barbican_tempest_plugin/tests/test_barbican_tempest_plugin.py
@@ -0,0 +1,28 @@
+# -*- coding: utf-8 -*-
+
+# 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.
+
+"""
+test_barbican_tempest_plugin
+----------------------------------
+
+Tests for `barbican_tempest_plugin` module.
+"""
+
+from barbican_tempest_plugin.tests import base
+
+
+class TestBarbican_tempest_plugin(base.TestCase):
+
+ def test_something(self):
+ pass