Skip incompatible heat tests (Contrail)

Skip incompatible heat tests due to contrail restrictions:
* Update of allocation_pools is not allowed

Change-Id: I77528dbc5bd8e16e3a00f7dccd7f3374199424c5
Related-PROD: PROD-25502
diff --git a/_modules/runtest/tempest_sections/heat_plugin.py b/_modules/runtest/tempest_sections/heat_plugin.py
index 945ea39..4feab0f 100644
--- a/_modules/runtest/tempest_sections/heat_plugin.py
+++ b/_modules/runtest/tempest_sections/heat_plugin.py
@@ -235,7 +235,26 @@
 
     @property
     def skip_functional_test_list(self):
-        pass
+        skip_list = []
+
+        # Update of allocation_pools is not allowed in case of Contrail
+        contrail_enabled = conditions.BaseRule('*.opencontrail.control.enabled',
+                                               'eq', True, multiple='any')
+        if contrail_enabled.check(self.pillar):
+            skip_list.append('UpdateSubnetTest')
+
+        # UpdateServerNetworksTest, StackTemplateValidateTest : These tests are
+        # supported since Queens.
+        pike = conditions.BaseRule('*.heat.server.version', 'eq', 'pike')
+        if pike.check(self.pillar):
+            skip_list.extend(['UpdateServerNetworksTest',
+                              'StackTemplateValidateTest'])
+
+        if not skip_list:
+            pass
+        else:
+            skip_tests = ', '.join(skip_list)
+            return skip_tests
 
     @property
     def skip_functional_tests(self):
diff --git a/metadata/service/tempest/init.yml b/metadata/service/tempest/init.yml
index b7e1356..136b897 100644
--- a/metadata/service/tempest/init.yml
+++ b/metadata/service/tempest/init.yml
@@ -16,8 +16,6 @@
     runtest_heat_plugin_skip_scenario_test_list: 'SoftwareConfigIntegrationTest, VolumeBackupRestoreIntegrationTest, AodhAlarmTest'
     # VolumeBackupRestoreIntegrationTest : we don't use volume backup in our default configuration.
     # AodhAlarmTest : we don't have aodh endpoint because of have't telemetry on default configuration.
-    runtest_heat_plugin_skip_functional_test_list: 'UpdateServerNetworksTest, StackTemplateValidateTest'
-    # UpdateServerNetworksTest, StackTemplateValidateTest : These tests support in openstack Queens, but not in Pike.
     runtest_path_to_ca_file: '/etc/ssl/certs/ca-certificates.crt'
     runtest_path_to_boot_config_env_file: '/usr/local/lib/python2.7/dist-packages/heat_tempest_plugin/tests/scenario/templates/boot_config_none_env.yaml'
     runtest_local_image_url: ${_param:glance_image_cirros_location}
@@ -107,7 +105,6 @@
         backup: false
       heat_plugin:
         skip_scenario_test_list: ${_param:runtest_heat_plugin_skip_scenario_test_list}
-        skip_functional_test_list: ${_param:runtest_heat_plugin_skip_functional_test_list}
         project_domain_id: default
         user_domain_id: default
         disable_ssl_certificate_validation: False