summaryrefslogtreecommitdiff
path: root/tests/integration_tests
diff options
context:
space:
mode:
authorJames Falcon <TheRealFalcon@users.noreply.github.com>2020-12-11 13:51:48 -0600
committerGitHub <noreply@github.com>2020-12-11 13:51:48 -0600
commit9ea845dbdde81d773cea76bd47ff566470366f38 (patch)
treefa16f85279a2675e0a2551ac3b0ca46126d5fd5e /tests/integration_tests
parent8321f0c00dc72cbe0ea40cda7b2843b9d2270b11 (diff)
downloadvyos-cloud-init-9ea845dbdde81d773cea76bd47ff566470366f38.tar.gz
vyos-cloud-init-9ea845dbdde81d773cea76bd47ff566470366f38.zip
Integration test for gh-632. (#725)
Verify that if cloud-init is using DataSourceRbxCloud, there is no traceback if the metadata disk cannot be found.
Diffstat (limited to 'tests/integration_tests')
-rw-r--r--tests/integration_tests/bugs/test_gh632.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/integration_tests/bugs/test_gh632.py b/tests/integration_tests/bugs/test_gh632.py
new file mode 100644
index 00000000..cf166356
--- /dev/null
+++ b/tests/integration_tests/bugs/test_gh632.py
@@ -0,0 +1,30 @@
+"""Integration test for gh-632.
+
+Verify that if cloud-init is using DataSourceRbxCloud, there is
+no traceback if the metadata disk cannot be found.
+"""
+
+import pytest
+
+from tests.integration_tests.instances import IntegrationInstance
+
+
+@pytest.mark.sru_2020_11
+def test_datasource_rbx_no_stacktrace(client: IntegrationInstance):
+ client.write_to_file(
+ '/etc/cloud/cloud.cfg.d/90_dpkg.cfg',
+ 'datasource_list: [ RbxCloud, NoCloud ]\n',
+ )
+ client.write_to_file(
+ '/etc/cloud/ds-identify.cfg',
+ 'policy: enabled\n',
+ )
+ client.execute('cloud-init clean --logs')
+ client.restart()
+
+ log = client.read_from_file('/var/log/cloud-init.log')
+ assert 'WARNING' not in log
+ assert 'Traceback' not in log
+ assert 'Failed to load metadata and userdata' not in log
+ assert ("Getting data from <class 'cloudinit.sources.DataSourceRbxCloud."
+ "DataSourceRbxCloud'> failed") not in log