diff options
author | James Falcon <TheRealFalcon@users.noreply.github.com> | 2020-12-15 13:40:25 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-15 14:40:25 -0500 |
commit | 2022bc72829869939fb0b75dea5e96da81f29bfc (patch) | |
tree | 82505b9fac83696531eef38e1ef4b1f77e0ab9ee /tests/integration_tests/bugs | |
parent | ca49e27b21ccc65ec20a10fd8e085bec36d5bf3d (diff) | |
download | vyos-cloud-init-2022bc72829869939fb0b75dea5e96da81f29bfc.tar.gz vyos-cloud-init-2022bc72829869939fb0b75dea5e96da81f29bfc.zip |
Integration test for gh-626 (#728)
Ensure if wakeonlan is specified in the network config that it is
rendered in the /etc/network/interfaces or netplan config.
Diffstat (limited to 'tests/integration_tests/bugs')
-rw-r--r-- | tests/integration_tests/bugs/test_gh626.py | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/integration_tests/bugs/test_gh626.py b/tests/integration_tests/bugs/test_gh626.py new file mode 100644 index 00000000..2d336462 --- /dev/null +++ b/tests/integration_tests/bugs/test_gh626.py @@ -0,0 +1,42 @@ +"""Integration test for gh-626. + +Ensure if wakeonlan is specified in the network config that it is rendered +in the /etc/network/interfaces or netplan config. +""" + +import pytest +import yaml + +from tests.integration_tests.clouds import ImageSpecification +from tests.integration_tests.instances import IntegrationInstance + + +NETWORK_CONFIG = """\ +version: 2 +ethernets: + eth0: + dhcp4: true + wakeonlan: true +""" + +EXPECTED_ENI_END = """\ +iface eth0 inet dhcp + ethernet-wol g""" + + +@pytest.mark.sru_2020_11 +@pytest.mark.lxd_container +@pytest.mark.lxd_vm +@pytest.mark.lxd_config_dict({ + 'user.network-config': NETWORK_CONFIG +}) +def test_wakeonlan(client: IntegrationInstance): + if ImageSpecification.from_os_image().release == 'xenial': + eni = client.execute('cat /etc/network/interfaces.d/50-cloud-init.cfg') + assert eni.endswith(EXPECTED_ENI_END) + return + + netplan_cfg = client.execute('cat /etc/netplan/50-cloud-init.yaml') + netplan_yaml = yaml.safe_load(netplan_cfg) + assert 'wakeonlan' in netplan_yaml['network']['ethernets']['eth0'] + assert netplan_yaml['network']['ethernets']['eth0']['wakeonlan'] is True |