diff --git a/ironic_tempest_plugin/tests/api/admin/test_nodes.py b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
index 2709905..e4443d9 100644
--- a/ironic_tempest_plugin/tests/api/admin/test_nodes.py
+++ b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
@@ -400,16 +400,12 @@
         self.assertNotIn('tenant_vif_port_id', portgroup['internal_info'])
 
     @decorators.idempotent_id('a3d319d0-cacb-4e55-a3dc-3fa8b74880f2')
-    def test_vif_already_set_on_extra(self):
+    def test_vif_already_set(self):
         self.useFixture(
             api_microversion_fixture.APIMicroversionFixture('1.28'))
         _, self.port = self.create_port(self.node['uuid'],
                                         data_utils.rand_mac_address())
-        patch = [{'path': '/extra/vif_port_id',
-                  'op': 'add',
-                  'value': self.nport_id}]
-        self.client.update_port(self.port['uuid'], patch)
-
+        self.client.vif_attach(self.node['uuid'], self.nport_id)
         _, body = self.client.vif_list(self.node['uuid'])
         self.assertEqual({'vifs': [{'id': self.nport_id}]}, body)
 
diff --git a/ironic_tempest_plugin/tests/scenario/baremetal_standalone_manager.py b/ironic_tempest_plugin/tests/scenario/baremetal_standalone_manager.py
index 6b9d9e3..10a83a6 100644
--- a/ironic_tempest_plugin/tests/scenario/baremetal_standalone_manager.py
+++ b/ironic_tempest_plugin/tests/scenario/baremetal_standalone_manager.py
@@ -172,7 +172,7 @@
 
     @classmethod
     @bm.retry_on_conflict
-    def detach_all_vifs_from_node(cls, node_id):
+    def detach_all_vifs_from_node(cls, node_id, force_delete=False):
         """Detach all VIFs from a given node.
 
         :param node_id: Name or UUID of the node.
@@ -180,6 +180,11 @@
         vifs = cls.get_node_vifs(node_id)
         for vif in vifs:
             cls.baremetal_client.vif_detach(node_id, vif)
+            if force_delete:
+                try:
+                    cls.ports_client.delete_port(vif)
+                except lib_exc.NotFound:
+                    pass
 
     @classmethod
     @bm.retry_on_conflict
@@ -280,7 +285,7 @@
                                     interval=30)
 
     @classmethod
-    def terminate_node(cls, node_id):
+    def terminate_node(cls, node_id, force_delete=False):
         """Terminate active ironic node.
 
         The following actions are executed:
@@ -290,9 +295,9 @@
 
         :param node_id: Name or UUID for the node.
         """
-        cls.detach_all_vifs_from_node(node_id)
+        cls.detach_all_vifs_from_node(node_id, force_delete=force_delete)
 
-        if cls.delete_node:
+        if cls.delete_node or force_delete:
             cls.set_node_provision_state(node_id, 'deleted')
             # NOTE(vsaienko) We expect here fast switching from deleted to
             # available as automated cleaning is disabled so poll status
@@ -593,6 +598,7 @@
                 'CUSTOM_RAID', steps=steps)
             self.baremetal_client.add_node_trait(self.node['uuid'],
                                                  'CUSTOM_RAID')
+
         else:
             steps = [
                 {
@@ -612,6 +618,11 @@
                                                        config)
             self.manual_cleaning(self.node, clean_steps=steps)
 
+        # The node has been changed, anything at this point, we need to back
+        # out the raid configuration.
+        if not deploy_time:
+            self.addCleanup(self.remove_raid_configuration, self.node)
+
         # NOTE(dtantsur): this is not required, but it allows us to check that
         # the RAID device was in fact created and is used for deployment.
         patch = [{'path': '/properties/root_device',
@@ -623,14 +634,27 @@
         # NOTE(dtantsur): apparently cirros cannot boot from md devices :(
         # So we only move the node to active (verifying deployment).
         self.set_node_to_active()
+        if deploy_time:
+            self.addCleanup(self.remove_raid_configuration, self.node)
 
     def remove_root_device_hint(self):
         patch = [{'path': '/properties/root_device',
                   'op': 'remove'}]
         self.update_node(self.node['uuid'], patch=patch)
 
-    def remove_raid_configuration(self):
-        self.baremetal_client.set_node_raid_config(self.node['uuid'], {})
+    def remove_raid_configuration(self, node):
+        self.baremetal_client.set_node_raid_config(node['uuid'], {})
+        steps = [
+            {
+                "interface": "raid",
+                "step": "delete_configuration",
+            },
+            {
+                "interface": "deploy",
+                "step": "erase_devices_metadata",
+            }
+        ]
+        self.manual_cleaning(node, clean_steps=steps)
 
     def rescue_unrescue(self):
         rescue_password = uuidutils.generate_uuid()
diff --git a/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py b/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py
index 47e5f63..08abcfa 100644
--- a/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py
+++ b/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py
@@ -90,6 +90,7 @@
     api_microversion = '1.55'
     # Software RAID is always local boot
     boot_option = 'local'
+    delete_node = False
 
     raid_config = {
         "logical_disks": [
@@ -118,11 +119,7 @@
         # remove the root device hint, so it is best for us to go ahead
         # and remove it before exiting the test.
         self.remove_root_device_hint()
-        # Removes RAID configuration
-        # TODO(TheJulia): We _should_ tear the raid configuration down
-        # however bouncing neutron ports with known DHCP reload bugs
-        # is not a super great idea for tempest tests.
-        self.remove_raid_configuration()
+        self.terminate_node(self.node['uuid'], force_delete=True)
 
 
 class SoftwareRaidDirect(bsm.BaremetalStandaloneScenarioTest):
@@ -138,6 +135,7 @@
     api_microversion = '1.55'
     # Software RAID is always local boot
     boot_option = 'local'
+    delete_node = False
 
     # TODO(dtantsur): more complex layout in this job
     raid_config = {
@@ -167,8 +165,4 @@
         # remove the root device hint, so it is best for us to go ahead
         # and remove it before exiting the test.
         self.remove_root_device_hint()
-        # Removes RAID configuration
-        # TODO(TheJulia): We _should_ tear the raid configuration down
-        # however bouncing neutron ports with known DHCP reload bugs
-        # is not a super great idea for tempest tests.
-        self.remove_raid_configuration()
+        self.terminate_node(self.node['uuid'], force_delete=True)
diff --git a/ironic_tempest_plugin/tests/scenario/test_baremetal_multitenancy.py b/ironic_tempest_plugin/tests/scenario/test_baremetal_multitenancy.py
index 33d8724..60c3ed9 100644
--- a/ironic_tempest_plugin/tests/scenario/test_baremetal_multitenancy.py
+++ b/ironic_tempest_plugin/tests/scenario/test_baremetal_multitenancy.py
@@ -78,7 +78,7 @@
         remote.validate_authentication()
 
         cmd = 'ping %s -c4 -w4 || exit 0' % destination_ip
-        success_substring = "64 bytes from %s" % destination_ip
+        success_substring = " bytes from %s" % destination_ip
         output = remote.exec_command(cmd)
         if conn_expected:
             self.assertIn(success_substring, output)
diff --git a/ironic_tempest_plugin/tests/scenario/test_baremetal_single_tenant.py b/ironic_tempest_plugin/tests/scenario/test_baremetal_single_tenant.py
index d881081..a873471 100644
--- a/ironic_tempest_plugin/tests/scenario/test_baremetal_single_tenant.py
+++ b/ironic_tempest_plugin/tests/scenario/test_baremetal_single_tenant.py
@@ -85,7 +85,7 @@
         remote.validate_authentication()
 
         cmd = 'ping %s -c4 -w4 || exit 0' % destination_ip
-        success_substring = "64 bytes from %s" % destination_ip
+        success_substring = " bytes from %s" % destination_ip
         output = remote.exec_command(cmd)
         if conn_expected:
             self.assertIn(success_substring, output)
diff --git a/test-requirements.txt b/test-requirements.txt
index 138ad35..33a724b 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -2,8 +2,5 @@
 # of appearance. Changing the order has an impact on the overall integration
 # process, which may cause wedges in the gate later.
 
-hacking>=3.0.1,<3.1.0 # Apache-2.0
-
 stestr>=1.0.0 # Apache-2.0
 coverage!=4.4,>=4.0 # Apache-2.0
-flake8-import-order>=0.17.1 # LGPLv3
diff --git a/tox.ini b/tox.ini
index ac55994..65b5243 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-minversion = 3.2.1
+minversion = 3.9.0
 envlist = pep8
 skipsdist = True
 ignore_basepython_conflict=true
@@ -15,6 +15,10 @@
 commands = stestr run --slowest {posargs}
 
 [testenv:pep8]
+deps =
+    hacking>=3.1.0,<4.0.0 # Apache-2.0
+    flake8-import-order>=0.17.1 # LGPLv3
+    pycodestyle>=2.0.0,<2.7.0 # MIT
 commands = flake8 {posargs}
 
 [testenv:venv]
@@ -27,7 +31,7 @@
 commands =
     stestr run {posargs}
     coverage combine
-    coverage htlm -d cover
+    coverage html -d cover
     coverage xml -o cover/coverage.xml
 
 [testenv:docs]
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
index b3cd832..ac8a825 100644
--- a/zuul.d/project.yaml
+++ b/zuul.d/project.yaml
@@ -7,55 +7,55 @@
       jobs:
         # NOTE(dtantsur): keep N-3 and older non-voting for these jobs.
         - ironic-standalone
+        - ironic-standalone-victoria
         - ironic-standalone-ussuri
-        - ironic-standalone-train
-        - ironic-standalone-stein:
+        - ironic-standalone-train:
             voting: false
         - ironic-tempest-functional-python3
+        - ironic-tempest-functional-python3-victoria
         - ironic-tempest-functional-python3-ussuri
-        - ironic-tempest-functional-python3-train
-        - ironic-tempest-functional-python3-stein:
+        - ironic-tempest-functional-python3-train:
             voting: false
         - ironic-inspector-tempest
+        - ironic-inspector-tempest-victoria
         - ironic-inspector-tempest-ussuri
-        - ironic-inspector-tempest-train
-        - ironic-inspector-tempest-stein:
+        - ironic-inspector-tempest-train:
             voting: false
         - ironic-standalone-redfish
+        - ironic-standalone-redfish-victoria:
+            voting: false
         - ironic-standalone-redfish-ussuri:
             voting: false
         - ironic-standalone-redfish-train:
             voting: false
-        - ironic-standalone-redfish-stein:
-            voting: false
         # NOTE(dtantsur): these jobs cover rarely changed tests and are quite
         # unstable, so keep them non-voting.
         - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode:
             voting: false
+        - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-victoria:
+            voting: false
         - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-ussuri:
             voting: false
         - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-train:
             voting: false
-        - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-stein:
-            voting: false
         - ironic-inspector-tempest-discovery
+        - ironic-inspector-tempest-discovery-victoria:
+            voting: false
         - ironic-inspector-tempest-discovery-ussuri:
             voting: false
         - ironic-inspector-tempest-discovery-train:
             voting: false
-        - ironic-inspector-tempest-discovery-stein:
-            voting: false
     gate:
       queue: ironic
       jobs:
         - ironic-standalone
+        - ironic-standalone-victoria
         - ironic-standalone-ussuri
-        - ironic-standalone-train
         - ironic-tempest-functional-python3
+        - ironic-tempest-functional-python3-victoria
         - ironic-tempest-functional-python3-ussuri
-        - ironic-tempest-functional-python3-train
         - ironic-inspector-tempest
+        - ironic-inspector-tempest-victoria
         - ironic-inspector-tempest-ussuri
-        - ironic-inspector-tempest-train
         - ironic-standalone-redfish
         - ironic-inspector-tempest-discovery
diff --git a/zuul.d/stable-jobs.yaml b/zuul.d/stable-jobs.yaml
index b3824bc..ee0e524 100644
--- a/zuul.d/stable-jobs.yaml
+++ b/zuul.d/stable-jobs.yaml
@@ -1,4 +1,9 @@
 - job:
+    name: ironic-standalone-victoria
+    parent: ironic-standalone
+    override-checkout: stable/victoria
+
+- job:
     name: ironic-standalone-ussuri
     parent: ironic-standalone
     override-checkout: stable/ussuri
@@ -12,12 +17,10 @@
         USE_PYTHON3: True
 
 - job:
-    name: ironic-standalone-stein
-    parent: ironic-standalone
-    override-checkout: stable/stein
-    vars:
-      devstack_localrc:
-        USE_PYTHON3: True
+    name: ironic-standalone-redfish-victoria
+    parent: ironic-standalone-redfish
+    nodeset: openstack-single-node-focal
+    override-checkout: stable/victoria
 
 - job:
     name: ironic-standalone-redfish-ussuri
@@ -33,12 +36,9 @@
         USE_PYTHON3: True
 
 - job:
-    name: ironic-standalone-redfish-stein
-    parent: ironic-standalone-redfish
-    override-checkout: stable/stein
-    vars:
-      devstack_localrc:
-        USE_PYTHON3: True
+    name: ironic-tempest-functional-python3-victoria
+    parent: ironic-tempest-functional-python3
+    override-checkout: stable/victoria
 
 - job:
     name: ironic-tempest-functional-python3-ussuri
@@ -51,9 +51,9 @@
     override-checkout: stable/train
 
 - job:
-    name: ironic-tempest-functional-python3-stein
-    parent: ironic-tempest-functional-python3
-    override-checkout: stable/stein
+    name: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-victoria
+    parent: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode
+    override-checkout: stable/victoria
 
 - job:
     name: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-ussuri
@@ -69,12 +69,13 @@
         USE_PYTHON3: True
 
 - job:
-    name: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-stein
-    parent: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode
-    override-checkout: stable/stein
+    name: ironic-inspector-tempest-victoria
+    parent: ironic-inspector-tempest
+    override-checkout: stable/victoria
     vars:
       devstack_localrc:
-        USE_PYTHON3: True
+        FIXED_NETWORK_SIZE: 4096
+        EBTABLES_RACE_FIX: True
 
 - job:
     name: ironic-inspector-tempest-ussuri
@@ -96,14 +97,9 @@
         USE_PYTHON3: True
 
 - job:
-    name: ironic-inspector-tempest-stein
-    parent: ironic-inspector-tempest
-    override-checkout: stable/stein
-    vars:
-      devstack_localrc:
-        FIXED_NETWORK_SIZE: 4096
-        EBTABLES_RACE_FIX: True
-        USE_PYTHON3: True
+    name: ironic-inspector-tempest-discovery-victoria
+    parent: ironic-inspector-tempest-discovery
+    override-checkout: stable/victoria
 
 - job:
     name: ironic-inspector-tempest-discovery-ussuri
@@ -117,11 +113,3 @@
     vars:
       devstack_localrc:
         USE_PYTHON3: True
-
-- job:
-    name: ironic-inspector-tempest-discovery-stein
-    parent: ironic-inspector-tempest-discovery
-    override-checkout: stable/stein
-    vars:
-      devstack_localrc:
-        USE_PYTHON3: True
