Port V1 Tempest test from designate's contrib folder

These are a close to a straight port as was possible, no cleanup was
performed where it wasn't absolutly necessary.

In addition, we add flags to enable V1, V2, Admin API tests, and a
V1 servers API flag, as these tests have proved particularly
susceptible to race conditions.

Change-Id: Idc31c00c95fde96087f4f222ae9c17e554e6b1fc
diff --git a/designate_tempest_plugin/config.py b/designate_tempest_plugin/config.py
index 4094149..1dffcf0 100644
--- a/designate_tempest_plugin/config.py
+++ b/designate_tempest_plugin/config.py
@@ -13,6 +13,15 @@
 # under the License.
 from oslo_config import cfg
 
+service_available_group = cfg.OptGroup(name="service_available",
+                                       title="Available OpenStack Services")
+
+ServiceAvailableGroup = [
+    cfg.BoolOpt("designate",
+                default=True,
+                help="Whether or not designate is expected to be available."),
+]
+
 dns_group = cfg.OptGroup(name='dns',
                          title='DNS service options')
 
@@ -32,3 +41,21 @@
                default=60,
                help="Timeout in seconds to wait for an resource to build."),
 ]
+
+dns_feature_group = cfg.OptGroup(name='dns_feature_enabled',
+                                 title='Enabled Designate Features')
+
+DnsFeatureGroup = [
+    cfg.BoolOpt('api_v1',
+                default=True,
+                help="Is the v1 dns API enabled."),
+    cfg.BoolOpt('api_v2',
+                default=True,
+                help="Is the v2 dns API enabled."),
+    cfg.BoolOpt('api_admin',
+                default=True,
+                help="Is the admin dns API enabled."),
+    cfg.BoolOpt('api_v1_servers',
+                default=False,
+                help="Is the v1 dns servers API enabled."),
+]