2
from .releases import base_vm_classes as relbase
3
from .releases import centos_base_vm_classes as centos_relbase
4
from .test_network import TestNetworkBaseTestsAbs
10
class TestNetworkVlanAbs(TestNetworkBaseTestsAbs):
11
conf_file = "examples/tests/vlan_network.yaml"
12
collect_scripts = TestNetworkBaseTestsAbs.collect_scripts + [
15
ip -d link show interface1.2667 |tee ip_link_show_interface1.2667
16
ip -d link show interface1.2668 |tee ip_link_show_interface1.2668
17
ip -d link show interface1.2669 |tee ip_link_show_interface1.2669
18
ip -d link show interface1.2670 |tee ip_link_show_interface1.2670
22
network_state = self.get_network_state()
23
logger.debug('get_vlans ns:\n%s', yaml.dump(network_state,
24
default_flow_style=False,
26
interfaces = network_state.get('interfaces')
27
return [iface for iface in interfaces.values()
28
if iface['type'] == 'vlan']
30
def test_output_files_exist_vlan(self):
31
link_files = ["ip_link_show_%s" % vlan['name']
32
for vlan in self.get_vlans()]
33
self.output_files_exist(link_files)
35
def test_vlan_installed(self):
36
self.assertIn("vlan", self.debian_packages, "vlan deb not installed")
38
def test_vlan_enabled(self):
39
# we must have at least one
40
self.assertGreaterEqual(len(self.get_vlans()), 1)
42
# did they get configured?
43
for vlan in self.get_vlans():
44
link_file = "ip_link_show_" + vlan['name']
45
vlan_msg = "vlan.*id " + str(vlan['vlan_id'])
46
self.check_file_regex(link_file, vlan_msg)
49
class CentosTestNetworkVlanAbs(TestNetworkVlanAbs):
50
extra_kern_args = "BOOTIF=eth0-d4:be:d9:a8:49:13"
51
collect_scripts = TestNetworkVlanAbs.collect_scripts + [
54
cp -a /etc/sysconfig/network-scripts .
55
cp -a /var/log/cloud-init* .
56
cp -a /var/lib/cloud ./var_lib_cloud
57
cp -a /run/cloud-init ./run_cloud-init
60
def test_etc_network_interfaces(self):
63
def test_etc_resolvconf(self):
66
def test_vlan_installed(self):
67
"""centos has vlan support built-in, no extra packages needed"""
71
class TrustyTestNetworkVlan(relbase.trusty, TestNetworkVlanAbs):
75
class TrustyHWEXTestNetworkVlan(relbase.trusty_hwe_x, TestNetworkVlanAbs):
79
class XenialTestNetworkVlan(relbase.xenial, TestNetworkVlanAbs):
83
class ZestyTestNetworkVlan(relbase.zesty, TestNetworkVlanAbs):
87
class ArtfulTestNetworkVlan(relbase.artful, TestNetworkVlanAbs):
91
class BionicTestNetworkVlan(relbase.bionic, TestNetworkVlanAbs):
95
class Centos66TestNetworkVlan(centos_relbase.centos66fromxenial,
96
CentosTestNetworkVlanAbs):
100
class Centos70TestNetworkVlan(centos_relbase.centos70fromxenial,
101
CentosTestNetworkVlanAbs):