diff options
author | Daniel Watkins <oddbloke@ubuntu.com> | 2020-12-15 11:21:31 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-15 11:21:31 -0500 |
commit | 3339a5a4680e79fecb09907089239e6749e08a54 (patch) | |
tree | f71c0909f8f596fd56bc0bd6ba3bd016ba050df8 /tests | |
parent | 9ea845dbdde81d773cea76bd47ff566470366f38 (diff) | |
download | vyos-cloud-init-3339a5a4680e79fecb09907089239e6749e08a54.tar.gz vyos-cloud-init-3339a5a4680e79fecb09907089239e6749e08a54.zip |
integration_tests: port lxd_bridge test from cloud_tests (#718)
Diffstat (limited to 'tests')
-rw-r--r-- | tests/integration_tests/modules/test_lxd_bridge.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/integration_tests/modules/test_lxd_bridge.py b/tests/integration_tests/modules/test_lxd_bridge.py new file mode 100644 index 00000000..f68c6f2d --- /dev/null +++ b/tests/integration_tests/modules/test_lxd_bridge.py @@ -0,0 +1,46 @@ +"""Integration tests for LXD bridge creation. + +(This is ported from +``tests/cloud_tests/testcases/modules/lxd_bridge.yaml``.) +""" +import pytest +import yaml + + +USER_DATA = """\ +#cloud-config +lxd: + init: + storage_backend: dir + bridge: + mode: new + name: lxdbr0 + ipv4_address: 10.100.100.1 + ipv4_netmask: 24 + ipv4_dhcp_first: 10.100.100.100 + ipv4_dhcp_last: 10.100.100.200 + ipv4_nat: true + domain: lxd +""" + + +@pytest.mark.user_data(USER_DATA) +class TestLxdBridge: + + @pytest.mark.parametrize("binary_name", ["lxc", "lxd"]) + def test_binaries_installed(self, class_client, binary_name): + """Check that the expected LXD binaries are installed""" + assert class_client.execute(["which", binary_name]).ok + + @pytest.mark.sru_2020_11 + def test_bridge(self, class_client): + """Check that the given bridge is configured""" + cloud_init_log = class_client.read_from_file("/var/log/cloud-init.log") + assert "WARN" not in cloud_init_log + + # The bridge should exist + assert class_client.execute("ip addr show lxdbr0") + + raw_network_config = class_client.execute("lxc network show lxdbr0") + network_config = yaml.safe_load(raw_network_config) + assert "10.100.100.1/24" == network_config["config"]["ipv4.address"] |