Replace if with method to get iface
I replaced if with a method which has logic related to interface names. Name is fetched by old naming schema to ease developer switch. There is still a problem with yaml templates, should be fixed in next commits. Change-Id: I63787e51f9e74532f5dd49fb765cbe204b148eb1 Related-bug: #1523541
This commit is contained in:
parent
e80205d879
commit
4d3b4d13f6
|
@ -44,7 +44,6 @@ from fuelweb_test.models.fuel_web_client import FuelWebClient
|
|||
from fuelweb_test.models.collector_client import CollectorClient
|
||||
from fuelweb_test import settings
|
||||
from fuelweb_test.settings import MASTER_IS_CENTOS7
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test import logwrap
|
||||
from fuelweb_test import logger
|
||||
|
||||
|
@ -220,10 +219,10 @@ class EnvironmentModel(object):
|
|||
" <Enter>\n"
|
||||
) % params
|
||||
if MASTER_IS_CENTOS7:
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
iface = 'enp0s3'
|
||||
else:
|
||||
iface = 'eth0'
|
||||
# CentOS 7 is pretty stable with admin iface.
|
||||
# TODO(akostrikov) add tests for menu items/kernel parameters
|
||||
# TODO(akostrikov) refactor it.
|
||||
iface = 'enp0s3'
|
||||
if iso_connect_as == 'usb':
|
||||
keys = (
|
||||
"<Wait>\n" # USB boot uses boot_menu=yes for master node
|
||||
|
@ -572,10 +571,9 @@ class EnvironmentModel(object):
|
|||
raise Exception('Fuel node deployment failed.')
|
||||
|
||||
def dhcrelay_check(self):
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
iface = 'enp0s3'
|
||||
else:
|
||||
iface = 'eth0'
|
||||
# CentOS 7 is pretty stable with admin iface.
|
||||
# TODO(akostrikov) refactor it.
|
||||
iface = 'enp0s3'
|
||||
command = "dhcpcheck discover " \
|
||||
"--ifaces {iface} " \
|
||||
"--repeat 3 " \
|
||||
|
|
|
@ -71,7 +71,6 @@ from fuelweb_test.settings import OPENSTACK_RELEASE
|
|||
from fuelweb_test.settings import OPENSTACK_RELEASE_UBUNTU
|
||||
from fuelweb_test.settings import OSTF_TEST_NAME
|
||||
from fuelweb_test.settings import OSTF_TEST_RETRIES_COUNT
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import REPLACE_DEFAULT_REPOS
|
||||
from fuelweb_test.settings import REPLACE_DEFAULT_REPOS_ONLY_ONCE
|
||||
from fuelweb_test.settings import TIMEOUT
|
||||
|
@ -81,6 +80,7 @@ from fuelweb_test.settings import USER_OWNED_CERT
|
|||
from fuelweb_test.settings import VCENTER_IP
|
||||
from fuelweb_test.settings import VCENTER_PASSWORD
|
||||
from fuelweb_test.settings import VCENTER_USERNAME
|
||||
from fuelweb_test.settings import iface_alias
|
||||
|
||||
|
||||
class FuelWebClient(object):
|
||||
|
@ -1170,10 +1170,7 @@ class FuelWebClient(object):
|
|||
return ifaces
|
||||
|
||||
# fuelweb_admin is always on 1st iface unless the iface is not bonded
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
iface = 'enp0s3'
|
||||
else:
|
||||
iface = 'eth0'
|
||||
iface = iface_alias('eth0')
|
||||
if iface not in get_bond_ifaces():
|
||||
interfaces_dict[iface] = interfaces_dict.get(iface,
|
||||
[])
|
||||
|
@ -1300,47 +1297,25 @@ class FuelWebClient(object):
|
|||
net_provider = self.client.get_cluster(cluster_id)['net_provider']
|
||||
if NEUTRON == net_provider:
|
||||
assigned_networks = {
|
||||
'eth1': ['public'],
|
||||
'eth2': ['management'],
|
||||
'eth3': ['private'],
|
||||
'eth4': ['storage'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['management'],
|
||||
iface_alias('eth3'): ['private'],
|
||||
iface_alias('eth4'): ['storage'],
|
||||
}
|
||||
else:
|
||||
assigned_networks = {
|
||||
'eth1': ['public'],
|
||||
'eth2': ['management'],
|
||||
'eth3': ['fixed'],
|
||||
'eth4': ['storage'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['management'],
|
||||
iface_alias('eth3'): ['fixed'],
|
||||
iface_alias('eth4'): ['storage'],
|
||||
}
|
||||
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
if NEUTRON == net_provider:
|
||||
assigned_networks = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['management'],
|
||||
'enp0s6': ['private'],
|
||||
'enp0s7': ['storage'],
|
||||
}
|
||||
else:
|
||||
assigned_networks = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['management'],
|
||||
'enp0s6': ['fixed'],
|
||||
'enp0s7': ['storage'],
|
||||
}
|
||||
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
baremetal_iface = 'eth5'
|
||||
else:
|
||||
baremetal_iface = 'enp0s8'
|
||||
baremetal_iface = iface_alias('eth5')
|
||||
if self.get_cluster_additional_components(cluster_id).get(
|
||||
'ironic', False):
|
||||
assigned_networks[baremetal_iface] = ['baremetal']
|
||||
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
logger.info(str(assigned_networks))
|
||||
logger.info('Assigned networks are: {}'.format(str(assigned_networks)))
|
||||
|
||||
if not nailgun_nodes:
|
||||
nailgun_nodes = self.client.list_cluster_nodes(cluster_id)
|
||||
|
@ -1429,8 +1404,8 @@ class FuelWebClient(object):
|
|||
|
||||
devops_env = self.environment.d_env
|
||||
|
||||
if not PREDICTABLE_INTERFACE_NAMES and \
|
||||
'baremetal' in networks and \
|
||||
# NOTE(akostrikov) possible break.
|
||||
if 'baremetal' in networks and \
|
||||
devops_env.get_networks(name='ironic'):
|
||||
ironic_net = self.environment.d_env.get_network(
|
||||
name='ironic').ip
|
||||
|
|
|
@ -31,8 +31,21 @@ ENV_NAME = os.environ.get("ENV_NAME", "fuel_system_test")
|
|||
VIRTUAL_ENV = os.environ.get("VIRTUAL_ENV", "")
|
||||
|
||||
MASTER_IS_CENTOS7 = get_var_as_bool('MASTER_IS_CENTOS7', True)
|
||||
PREDICTABLE_INTERFACE_NAMES = get_var_as_bool('PREDICTABLE_INTERFACE_NAMES',
|
||||
True)
|
||||
|
||||
INTERFACES_DICT = {
|
||||
'eth0': os.environ.get('IFACE_0', 'enp0s3'),
|
||||
'eth1': os.environ.get('IFACE_1', 'enp0s4'),
|
||||
'eth2': os.environ.get('IFACE_2', 'enp0s5'),
|
||||
'eth3': os.environ.get('IFACE_3', 'enp0s6'),
|
||||
'eth4': os.environ.get('IFACE_4', 'enp0s7'),
|
||||
'eth5': os.environ.get('IFACE_5', 'enp0s8'),
|
||||
}
|
||||
|
||||
|
||||
# NOTE(akostrikov) The method is here to avoid problems with imports
|
||||
# Refactor when additional logic is needed like info from master node/devops.
|
||||
def iface_alias(interface_name):
|
||||
return INTERFACES_DICT[interface_name]
|
||||
|
||||
ISO_PATH = os.environ.get('ISO_PATH')
|
||||
LOGS_DIR = os.environ.get('LOGS_DIR', os.getcwd())
|
||||
|
@ -127,22 +140,12 @@ DHCP = {
|
|||
}
|
||||
|
||||
INTERFACES = {
|
||||
'admin': 'eth0',
|
||||
'public': 'eth1',
|
||||
'management': 'eth2',
|
||||
'private': 'eth3',
|
||||
'storage': 'eth4',
|
||||
'admin': iface_alias('eth0'),
|
||||
'public': iface_alias('eth1'),
|
||||
'management': iface_alias('eth2'),
|
||||
'private': iface_alias('eth3'),
|
||||
'storage': iface_alias('eth4'),
|
||||
}
|
||||
PREDICTABLE_INTERFACES = {
|
||||
'admin': 'enp0s3',
|
||||
'public': 'enp0s4',
|
||||
'management': 'enp0s5',
|
||||
'private': 'enp0s6',
|
||||
'storage': 'enp0s7',
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
INTERFACES = PREDICTABLE_INTERFACES
|
||||
|
||||
|
||||
# May be one of virtio, e1000, pcnet, rtl8139
|
||||
INTERFACE_MODEL = os.environ.get('INTERFACE_MODEL', 'virtio')
|
||||
|
@ -193,7 +196,7 @@ if MULTIPLE_NETWORKS:
|
|||
DHCP['private2'] = False
|
||||
DHCP['storage2'] = False
|
||||
|
||||
INTERFACES['admin2'] = 'eth5'
|
||||
INTERFACES['admin2'] = iface_alias('eth5')
|
||||
|
||||
POOL_DEFAULT2 = os.environ.get('POOL_DEFAULT2', '10.108.0.0/16:24')
|
||||
POOL_ADMIN2 = os.environ.get('POOL_ADMIN2', POOL_DEFAULT2)
|
||||
|
@ -234,15 +237,14 @@ if MULTIPLE_NETWORKS:
|
|||
BONDING = get_var_as_bool("BONDING", False)
|
||||
|
||||
BONDING_INTERFACES = {
|
||||
'admin': ['eth0'],
|
||||
'public': ['eth1', 'eth2', 'eth3', 'eth4']
|
||||
'admin': [iface_alias('eth0')],
|
||||
'public': [
|
||||
iface_alias('eth1'),
|
||||
iface_alias('eth2'),
|
||||
iface_alias('eth3'),
|
||||
iface_alias('eth4')
|
||||
]
|
||||
}
|
||||
PREDICTABLE_BONDING_INTERFACES = {
|
||||
'admin': ['enp0s3'],
|
||||
'public': ['enp0s4', 'enp0s5', 'enp0s6', 'enp0s7']
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
BONDING_INTERFACES = PREDICTABLE_BONDING_INTERFACES
|
||||
|
||||
NETWORK_MANAGERS = {
|
||||
'flat': 'FlatDHCPManager',
|
||||
|
|
|
@ -28,7 +28,7 @@ from fuelweb_test.settings import CONTRAIL_PLUGIN_PATH
|
|||
from fuelweb_test.settings import CONTRAIL_PLUGIN_PACK_UB_PATH
|
||||
from fuelweb_test.settings import CONTRAIL_PLUGIN_PACK_CEN_PATH
|
||||
from fuelweb_test.settings import NEUTRON_SEGMENT
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import iface_alias
|
||||
from fuelweb_test.tests.base_test_case import SetupEnvironment
|
||||
from fuelweb_test.tests.base_test_case import TestBasic
|
||||
|
||||
|
@ -722,8 +722,8 @@ class ContrailPlugin(TestBasic):
|
|||
'mode': 'active-backup',
|
||||
'name': 'bond0',
|
||||
'slaves': [
|
||||
{'name': 'eth4'},
|
||||
{'name': 'eth2'},
|
||||
{'name': iface_alias('eth4')},
|
||||
{'name': iface_alias('eth2')},
|
||||
],
|
||||
'state': None,
|
||||
'type': 'bond',
|
||||
|
@ -731,37 +731,14 @@ class ContrailPlugin(TestBasic):
|
|||
}, ]
|
||||
|
||||
interfaces = {
|
||||
'eth0': ['fuelweb_admin'],
|
||||
'eth1': ['public'],
|
||||
'eth3': ['private'],
|
||||
iface_alias('eth0'): ['fuelweb_admin'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth3'): ['private'],
|
||||
'bond0': [
|
||||
'management',
|
||||
'storage',
|
||||
]
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
raw_data = [{
|
||||
'mac': None,
|
||||
'mode': 'active-backup',
|
||||
'name': 'bond0',
|
||||
'slaves': [
|
||||
{'name': 'enp0s7'},
|
||||
{'name': 'enp0s5'},
|
||||
],
|
||||
'state': None,
|
||||
'type': 'bond',
|
||||
'assigned_networks': []
|
||||
}, ]
|
||||
|
||||
interfaces = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['private'],
|
||||
'bond0': [
|
||||
'management',
|
||||
'storage',
|
||||
]
|
||||
}
|
||||
|
||||
cluster_nodes = \
|
||||
self.fuel_web.client.list_cluster_nodes(self.cluster_id)
|
||||
|
|
|
@ -16,7 +16,7 @@ from proboscis.asserts import assert_false
|
|||
|
||||
from fuelweb_test import logger
|
||||
from fuelweb_test.helpers.utils import get_net_settings
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import iface_alias
|
||||
from fuelweb_test.tests.base_test_case import TestBasic
|
||||
|
||||
|
||||
|
@ -28,10 +28,10 @@ class BondingTest(TestBasic):
|
|||
'mode': 'active-backup',
|
||||
'name': 'bond0',
|
||||
'slaves': [
|
||||
{'name': 'eth5'},
|
||||
{'name': 'eth4'},
|
||||
{'name': 'eth3'},
|
||||
{'name': 'eth2'}
|
||||
{'name': iface_alias('eth5')},
|
||||
{'name': iface_alias('eth4')},
|
||||
{'name': iface_alias('eth3')},
|
||||
{'name': iface_alias('eth2')}
|
||||
],
|
||||
'state': None,
|
||||
'type': 'bond',
|
||||
|
@ -42,43 +42,14 @@ class BondingTest(TestBasic):
|
|||
'mode': 'active-backup',
|
||||
'name': 'bond1',
|
||||
'slaves': [
|
||||
{'name': 'eth1'},
|
||||
{'name': 'eth0'}
|
||||
{'name': iface_alias('eth1')},
|
||||
{'name': iface_alias('eth0')}
|
||||
],
|
||||
'state': None,
|
||||
'type': 'bond',
|
||||
'assigned_networks': []
|
||||
}
|
||||
]
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
self.BOND_CONFIG = [
|
||||
{
|
||||
'mac': None,
|
||||
'mode': 'active-backup',
|
||||
'name': 'bond0',
|
||||
'slaves': [
|
||||
{'name': 'enp0s8'},
|
||||
{'name': 'enp0s7'},
|
||||
{'name': 'enp0s6'},
|
||||
{'name': 'enp0s5'}
|
||||
],
|
||||
'state': None,
|
||||
'type': 'bond',
|
||||
'assigned_networks': []
|
||||
},
|
||||
{
|
||||
'mac': None,
|
||||
'mode': 'active-backup',
|
||||
'name': 'bond1',
|
||||
'slaves': [
|
||||
{'name': 'enp0s4'},
|
||||
{'name': 'enp0s3'}
|
||||
],
|
||||
'state': None,
|
||||
'type': 'bond',
|
||||
'assigned_networks': []
|
||||
}
|
||||
]
|
||||
|
||||
self.INTERFACES = {
|
||||
'bond0': [
|
||||
|
|
|
@ -28,7 +28,7 @@ from fuelweb_test.settings import NEUTRON_SEGMENT
|
|||
from fuelweb_test.settings import NEUTRON_SEGMENT_TYPE
|
||||
from fuelweb_test.settings import OPENSTACK_RELEASE
|
||||
from fuelweb_test.settings import OPENSTACK_RELEASE_UBUNTU
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import iface_alias
|
||||
from fuelweb_test.helpers.utils import run_on_remote_get_results
|
||||
from fuelweb_test.tests.base_test_case import SetupEnvironment
|
||||
from fuelweb_test.tests.base_test_case import TestBasic
|
||||
|
@ -625,18 +625,11 @@ class NodeMultipleInterfaces(TestBasic):
|
|||
self.env.revert_snapshot("ready_with_3_slaves")
|
||||
|
||||
interfaces_dict = {
|
||||
'eth1': ['public'],
|
||||
'eth2': ['storage'],
|
||||
'eth3': ['private'],
|
||||
'eth4': ['management'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['storage'],
|
||||
iface_alias('eth3'): ['private'],
|
||||
iface_alias('eth4'): ['management'],
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces_dict = {
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['storage'],
|
||||
'enp0s6': ['private'],
|
||||
'enp0s7': ['management'],
|
||||
}
|
||||
|
||||
cluster_id = self.fuel_web.create_cluster(
|
||||
name=self.__class__.__name__,
|
||||
|
@ -829,18 +822,11 @@ class UntaggedNetworksNegative(TestBasic):
|
|||
|
||||
vlan_turn_off = {'vlan_start': None}
|
||||
interfaces = {
|
||||
'eth0': ["fixed"],
|
||||
'eth1': ["public"],
|
||||
'eth2': ["management", "storage"],
|
||||
'eth3': []
|
||||
iface_alias('eth0'): ["fixed"],
|
||||
iface_alias('eth1'): ["public"],
|
||||
iface_alias('eth2'): ["management", "storage"],
|
||||
iface_alias('eth3'): []
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ["fixed"],
|
||||
'enp0s4': ["public"],
|
||||
'enp0s5': ["management", "storage"],
|
||||
'enp0s6': []
|
||||
}
|
||||
|
||||
cluster_id = self.fuel_web.create_cluster(
|
||||
name=self.__class__.__name__,
|
||||
|
|
|
@ -21,7 +21,7 @@ from fuelweb_test.helpers import decorators
|
|||
from fuelweb_test.helpers import os_actions
|
||||
from fuelweb_test import logger
|
||||
from fuelweb_test import settings as CONF
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import iface_alias
|
||||
from fuelweb_test.tests import base_test_case
|
||||
|
||||
|
||||
|
@ -241,36 +241,20 @@ class TestJumboFrames(base_test_case.TestBasic):
|
|||
)
|
||||
|
||||
interfaces = {
|
||||
'eth0': ['fuelweb_admin'],
|
||||
'eth1': ['public'],
|
||||
'eth2': ['management'],
|
||||
'eth3': ['private'],
|
||||
'eth4': ['storage'],
|
||||
iface_alias('eth0'): ['fuelweb_admin'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['management'],
|
||||
iface_alias('eth3'): ['private'],
|
||||
iface_alias('eth4'): ['storage'],
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['management'],
|
||||
'enp0s6': ['private'],
|
||||
'enp0s7': ['storage'],
|
||||
}
|
||||
|
||||
interfaces_update = [{
|
||||
'name': 'eth3',
|
||||
'name': iface_alias('eth3'),
|
||||
'interface_properties': {
|
||||
'mtu': 9000,
|
||||
'disable_offloading': False
|
||||
},
|
||||
}]
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces_update = [{
|
||||
'name': 'enp0s6',
|
||||
'interface_properties': {
|
||||
'mtu': 9000,
|
||||
'disable_offloading': False
|
||||
},
|
||||
}]
|
||||
|
||||
self.fuel_web.update_nodes(
|
||||
cluster_id,
|
||||
|
@ -297,18 +281,14 @@ class TestJumboFrames(base_test_case.TestBasic):
|
|||
'slave-04', 'slave-05']:
|
||||
node = self.fuel_web.get_nailgun_node_by_name(node_name)
|
||||
with self.env.d_env.get_ssh_to_remote(node['ip']) as remote:
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
asserts.assert_true(
|
||||
self.check_node_iface_mtu(remote, 'enp0s6', 9000),
|
||||
"MTU on {0} is not 9000. Actual value: {1}"
|
||||
.format(remote.host,
|
||||
self.get_node_iface(remote, "enp0s6")))
|
||||
else:
|
||||
asserts.assert_true(
|
||||
self.check_node_iface_mtu(remote, 'eth3', 9000),
|
||||
"MTU on {0} is not 9000. Actual value: {1}"
|
||||
.format(remote.host,
|
||||
self.get_node_iface(remote, "eth3")))
|
||||
asserts.assert_true(
|
||||
self.check_node_iface_mtu(remote,
|
||||
iface_alias('eth3'),
|
||||
9000),
|
||||
"MTU on {0} is not 9000. Actual value: {1}"
|
||||
.format(remote.host,
|
||||
self.get_node_iface(remote,
|
||||
iface_alias('eth3'))))
|
||||
|
||||
self.check_mtu_size_between_instances(mtu_offset=0)
|
||||
self.env.make_snapshot("ready_jumbo_frames_neutron_vlan")
|
||||
|
@ -345,36 +325,20 @@ class TestJumboFrames(base_test_case.TestBasic):
|
|||
)
|
||||
|
||||
interfaces = {
|
||||
'eth0': ['fuelweb_admin'],
|
||||
'eth1': ['public'],
|
||||
'eth2': ['management'],
|
||||
'eth3': ['private'],
|
||||
'eth4': ['storage'],
|
||||
iface_alias('eth0'): ['fuelweb_admin'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['management'],
|
||||
iface_alias('eth3'): ['private'],
|
||||
iface_alias('eth4'): ['storage'],
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['management'],
|
||||
'enp0s6': ['private'],
|
||||
'enp0s7': ['storage'],
|
||||
}
|
||||
|
||||
interfaces_update = [{
|
||||
'name': 'eth3',
|
||||
'name': iface_alias('eth3'),
|
||||
'interface_properties': {
|
||||
'mtu': 9000,
|
||||
'disable_offloading': False
|
||||
},
|
||||
}]
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces_update = [{
|
||||
'name': 'enp0s6',
|
||||
'interface_properties': {
|
||||
'mtu': 9000,
|
||||
'disable_offloading': False
|
||||
},
|
||||
}]
|
||||
|
||||
self.fuel_web.update_nodes(
|
||||
cluster_id,
|
||||
|
@ -401,18 +365,14 @@ class TestJumboFrames(base_test_case.TestBasic):
|
|||
'slave-04', 'slave-05']:
|
||||
node = self.fuel_web.get_nailgun_node_by_name(node_name)
|
||||
with self.env.d_env.get_ssh_to_remote(node['ip']) as remote:
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
asserts.assert_true(
|
||||
self.check_node_iface_mtu(remote, 'enp0s6', 9000),
|
||||
"MTU on {0} is not 9000. Actual value: {1}"
|
||||
.format(remote.host,
|
||||
self.get_node_iface(remote, "enp0s6")))
|
||||
else:
|
||||
asserts.assert_true(
|
||||
self.check_node_iface_mtu(remote, 'eth3', 9000),
|
||||
"MTU on {0} is not 9000. Actual value: {1}"
|
||||
.format(remote.host,
|
||||
self.get_node_iface(remote, "eth3")))
|
||||
asserts.assert_true(
|
||||
self.check_node_iface_mtu(remote,
|
||||
iface_alias('eth3'),
|
||||
9000),
|
||||
"MTU on {0} is not 9000. Actual value: {1}"
|
||||
.format(remote.host,
|
||||
self.get_node_iface(remote,
|
||||
iface_alias('eth3'))))
|
||||
|
||||
self.check_mtu_size_between_instances(mtu_offset=50)
|
||||
self.env.make_snapshot("ready_jumbo_frames_neutron_vxlan")
|
||||
|
|
|
@ -21,7 +21,7 @@ from fuelweb_test.helpers.checkers import check_offload
|
|||
from fuelweb_test.helpers.decorators import log_snapshot_after_test
|
||||
from fuelweb_test import logger
|
||||
from fuelweb_test.settings import DEPLOYMENT_MODE
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import iface_alias
|
||||
from fuelweb_test.tests.base_test_case import SetupEnvironment
|
||||
from fuelweb_test.tests.base_test_case import TestBasic
|
||||
|
||||
|
@ -63,14 +63,14 @@ class TestOffloading(TestBasic):
|
|||
)
|
||||
|
||||
interfaces = {
|
||||
'eth1': ['public'],
|
||||
'eth2': ['private'],
|
||||
'eth3': ['management'],
|
||||
'eth4': ['storage'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['private'],
|
||||
iface_alias('eth3'): ['management'],
|
||||
iface_alias('eth4'): ['storage'],
|
||||
}
|
||||
|
||||
offloading_modes = [{
|
||||
'name': 'eth1',
|
||||
'name': iface_alias('eth1'),
|
||||
'offloading_modes': [{
|
||||
'state': 'true',
|
||||
'name': 'rx-vlan-offload',
|
||||
|
@ -78,36 +78,12 @@ class TestOffloading(TestBasic):
|
|||
'state': 'true',
|
||||
'name': 'tx-vlan-offload',
|
||||
'sub': []}]}, {
|
||||
'name': 'eth2',
|
||||
'name': iface_alias('eth2'),
|
||||
'offloading_modes': [{
|
||||
'state': 'false',
|
||||
'name': 'large-receive-offload',
|
||||
'sub': []}]}]
|
||||
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['management'],
|
||||
'enp0s6': ['private'],
|
||||
'enp0s7': ['storage'],
|
||||
}
|
||||
|
||||
offloading_modes = [{
|
||||
'name': 'enp0s4',
|
||||
'offloading_modes': [{
|
||||
'state': 'true',
|
||||
'name': 'rx-vlan-offload',
|
||||
'sub': []}, {
|
||||
'state': 'true',
|
||||
'name': 'tx-vlan-offload',
|
||||
'sub': []}]}, {
|
||||
'name': 'enp0s5',
|
||||
'offloading_modes': [{
|
||||
'state': 'false',
|
||||
'name': 'large-receive-offload',
|
||||
'sub': []}]}]
|
||||
|
||||
self.show_step(2)
|
||||
self.show_step(3)
|
||||
self.fuel_web.update_nodes(
|
||||
|
@ -140,17 +116,23 @@ class TestOffloading(TestBasic):
|
|||
with self.env.d_env.get_ssh_to_remote(node['ip']) as remote:
|
||||
logger.info("Verify Offload types")
|
||||
|
||||
result = check_offload(remote, 'eth1', 'rx-vlan-offload')
|
||||
result = check_offload(remote,
|
||||
iface_alias('eth1'),
|
||||
'rx-vlan-offload')
|
||||
assert_equal(result, "on",
|
||||
"Offload type {0} is {1} on remote host"
|
||||
.format('rx-vlan-offload', result))
|
||||
|
||||
result = check_offload(remote, 'eth1', 'tx-vlan-offload')
|
||||
result = check_offload(remote,
|
||||
iface_alias('eth1'),
|
||||
'tx-vlan-offload')
|
||||
assert_equal(result, "on",
|
||||
"Offload type {0} is {1} on remote host"
|
||||
.format('tx-vlan-offload', result))
|
||||
|
||||
result = check_offload(remote, 'eth2', 'large-receive-offload')
|
||||
result = check_offload(remote,
|
||||
iface_alias('eth2'),
|
||||
'large-receive-offload')
|
||||
assert_equal(result, "off",
|
||||
"Offload type {0} is {1} on remote host"
|
||||
.format('large-receive-offload', result))
|
||||
|
@ -194,14 +176,14 @@ class TestOffloading(TestBasic):
|
|||
)
|
||||
|
||||
interfaces = {
|
||||
'eth1': ['public'],
|
||||
'eth2': ['private'],
|
||||
'eth3': ['management'],
|
||||
'eth4': ['storage'],
|
||||
iface_alias('eth1'): ['public'],
|
||||
iface_alias('eth2'): ['private'],
|
||||
iface_alias('eth3'): ['management'],
|
||||
iface_alias('eth4'): ['storage'],
|
||||
}
|
||||
|
||||
offloading_modes = [{
|
||||
'name': 'eth1',
|
||||
'name': iface_alias('eth1'),
|
||||
'offloading_modes': [{
|
||||
'state': 'true',
|
||||
'name': 'rx-vlan-offload',
|
||||
|
@ -209,36 +191,12 @@ class TestOffloading(TestBasic):
|
|||
'state': 'true',
|
||||
'name': 'tx-vlan-offload',
|
||||
'sub': []}]}, {
|
||||
'name': 'eth2',
|
||||
'name': iface_alias('eth2'),
|
||||
'offloading_modes': [{
|
||||
'state': 'false',
|
||||
'name': 'large-receive-offload',
|
||||
'sub': []}]}]
|
||||
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ['fuelweb_admin'],
|
||||
'enp0s4': ['public'],
|
||||
'enp0s5': ['management'],
|
||||
'enp0s6': ['private'],
|
||||
'enp0s7': ['storage'],
|
||||
}
|
||||
|
||||
offloading_modes = [{
|
||||
'name': 'enp0s4',
|
||||
'offloading_modes': [{
|
||||
'state': 'true',
|
||||
'name': 'rx-vlan-offload',
|
||||
'sub': []}, {
|
||||
'state': 'true',
|
||||
'name': 'tx-vlan-offload',
|
||||
'sub': []}]}, {
|
||||
'name': 'enp0s5',
|
||||
'offloading_modes': [{
|
||||
'state': 'false',
|
||||
'name': 'large-receive-offload',
|
||||
'sub': []}]}]
|
||||
|
||||
self.show_step(2)
|
||||
self.show_step(3)
|
||||
self.fuel_web.update_nodes(
|
||||
|
@ -271,17 +229,23 @@ class TestOffloading(TestBasic):
|
|||
with self.env.d_env.get_ssh_to_remote(node['ip']) as remote:
|
||||
logger.info("Verify Offload types")
|
||||
|
||||
result = check_offload(remote, 'eth1', 'rx-vlan-offload')
|
||||
result = check_offload(remote,
|
||||
iface_alias('eth1'),
|
||||
'rx-vlan-offload')
|
||||
assert_equal(result, "on",
|
||||
"Offload type {0} is {1} on remote host"
|
||||
.format('rx-vlan-offload', result))
|
||||
|
||||
result = check_offload(remote, 'eth1', 'tx-vlan-offload')
|
||||
result = check_offload(remote,
|
||||
iface_alias('eth1'),
|
||||
'tx-vlan-offload')
|
||||
assert_equal(result, "on",
|
||||
"Offload type {0} is {1} on remote host"
|
||||
.format('tx-vlan-offload', result))
|
||||
|
||||
result = check_offload(remote, 'eth2', 'large-receive-offload')
|
||||
result = check_offload(remote,
|
||||
iface_alias('eth2'),
|
||||
'large-receive-offload')
|
||||
assert_equal(result, "off",
|
||||
"Offload type {0} is {1} on remote host"
|
||||
.format('large-receive-offload', result))
|
||||
|
|
|
@ -20,10 +20,10 @@ from devops.error import TimeoutError
|
|||
from fuelweb_test.helpers.decorators import log_snapshot_after_test
|
||||
from fuelweb_test import logger
|
||||
from fuelweb_test.settings import DEPLOYMENT_MODE
|
||||
from fuelweb_test.settings import PREDICTABLE_INTERFACE_NAMES
|
||||
from fuelweb_test.settings import SERVTEST_USERNAME
|
||||
from fuelweb_test.settings import SERVTEST_PASSWORD
|
||||
from fuelweb_test.settings import SERVTEST_TENANT
|
||||
from fuelweb_test.settings import iface_alias
|
||||
from fuelweb_test.tests.base_test_case import SetupEnvironment
|
||||
from fuelweb_test.tests.base_test_case import TestBasic
|
||||
from fuelweb_test.helpers import os_actions
|
||||
|
@ -65,20 +65,12 @@ class VcenterDeploy(TestBasic):
|
|||
# because Nova will use the same vSwitch for PortGroups creating
|
||||
# as a ESXi management interface is located in.
|
||||
interfaces = {
|
||||
'eth0': ["fuelweb_admin"],
|
||||
'eth1': ["public", "fixed"],
|
||||
'eth2': ["management", ],
|
||||
'eth3': [],
|
||||
'eth4': ["storage"]
|
||||
iface_alias('eth0'): ["fuelweb_admin"],
|
||||
iface_alias('eth1'): ["public", "fixed"],
|
||||
iface_alias('eth2'): ["management", ],
|
||||
iface_alias('eth3'): [],
|
||||
iface_alias('eth4'): ["storage"]
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ["fuelweb_admin"],
|
||||
'enp0s4': ["public", "fixed"],
|
||||
'enp0s5': ["management", ],
|
||||
'enp0s6': [],
|
||||
'enp0s7': ["storage"]
|
||||
}
|
||||
|
||||
slave_nodes = self.fuel_web.client.list_cluster_nodes(cluster_id)
|
||||
for node in slave_nodes:
|
||||
|
@ -971,20 +963,13 @@ class VcenterDeploy(TestBasic):
|
|||
# because Nova will use the same vSwitch for PortGroups creating
|
||||
# as a ESXi management interface is located in.
|
||||
interfaces = {
|
||||
'eth0': ["fuelweb_admin"],
|
||||
'eth1': ["public", "fixed"],
|
||||
'eth2': ["management", ],
|
||||
'eth3': [],
|
||||
'eth4': ["storage"]
|
||||
iface_alias('eth0'): ["fuelweb_admin"],
|
||||
iface_alias('eth1'): ["public", "fixed"],
|
||||
iface_alias('eth2'): ["management", ],
|
||||
iface_alias('eth3'): [],
|
||||
iface_alias('eth4'): ["storage"]
|
||||
}
|
||||
if PREDICTABLE_INTERFACE_NAMES:
|
||||
interfaces = {
|
||||
'enp0s3': ["fuelweb_admin"],
|
||||
'enp0s4': ["public", "fixed"],
|
||||
'enp0s5': ["management", ],
|
||||
'enp0s6': [],
|
||||
'enp0s7': ["storage"]
|
||||
}
|
||||
|
||||
self.configure_nova_vlan(cluster_id)
|
||||
# Configure VMWare vCenter
|
||||
self.fuel_web.vcenter_configure(cluster_id)
|
||||
|
|
Loading…
Reference in New Issue