Public bug reported: unittests are failing during packaging of cloud-init on disco during an sbuild due to failures in OpenNebula datasource unit tests.
Unit tests are now seeing EPOCHREALTIME values returned because those env values have changed across the unit test run. OpenNebula datasource tries to exclude known bash -e env values that are known to change. and EPOCHREALTIME is one of the expected env variables that should continue to have a value delta. ====================================================================== FAIL: tests.unittests.test_datasource.test_opennebula.TestOpenNebulaDataSource.test_context_parser ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 161, in test_context_parser self.assertEqual(TEST_VARS, results['metadata']) AssertionError: {'VAR1': 'single', 'VAR2': 'double word', '[207 chars] '$'} != {'EPOCHREALTIME': '1548476675.477863', 'VAR[245 chars]e\n'} + {'EPOCHREALTIME': '1548476675.477863', - {'VAR1': 'single', ? ^ + 'VAR1': 'single', ? ^ 'VAR10': '\\', 'VAR11': "'", 'VAR12': '$', 'VAR2': 'double word', 'VAR3': 'multi\nline\n', 'VAR4': "'single'", 'VAR5': "'double word'", 'VAR6': "'multi\nline\n'", 'VAR7': 'single\\t', 'VAR8': 'double\\tword', 'VAR9': 'multi\\t\nline\n'} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Reading from /tmp/ci-TestOpenNebulaDataSource.ms6gmudd/seed/opennebula/context.sh (quiet=False) cloudinit.util: DEBUG: Read 262 bytes from /tmp/ci-TestOpenNebulaDataSource.ms6gmudd/seed/opennebula/context.sh cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: tests.unittests.test_datasource.test_opennebula.TestOpenNebulaDataSource.test_seed_dir_empty1_context ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 140, in test_seed_dir_empty1_context self.assertEqual(results['metadata'], {}) AssertionError: {'EPOCHREALTIME': '1548476675.848343'} != {} - {'EPOCHREALTIME': '1548476675.848343'} + {} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Reading from /tmp/ci-TestOpenNebulaDataSource.gu1w3vu_/seed/opennebula/context.sh (quiet=False) cloudinit.util: DEBUG: Read 0 bytes from /tmp/ci-TestOpenNebulaDataSource.gu1w3vu_/seed/opennebula/context.sh cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: tests.unittests.test_datasource.test_opennebula.TestOpenNebulaDataSource.test_seed_dir_empty2_context ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 147, in test_seed_dir_empty2_context self.assertEqual(results['metadata'], {}) AssertionError: {'EPOCHREALTIME': '1548476675.863058'} != {} - {'EPOCHREALTIME': '1548476675.863058'} + {} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Reading from /tmp/ci-TestOpenNebulaDataSource.b3f_3ztm/seed/opennebula/context.sh (quiet=False) cloudinit.util: DEBUG: Read 44 bytes from /tmp/ci-TestOpenNebulaDataSource.b3f_3ztm/seed/opennebula/context.sh cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: test_no_seconds (tests.unittests.test_datasource.test_opennebula.TestParseShellConfig) ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 921, in test_no_seconds self.assertEqual(ret, {"foo": "bar", "xx": "foo"}) AssertionError: {'foo': 'bar', 'xx': 'foo', 'EPOCHREALTIME': '1548476676.329965'} != {'foo': 'bar', 'xx': 'foo'} - {'EPOCHREALTIME': '1548476676.329965', 'foo': 'bar', 'xx': 'foo'} + {'foo': 'bar', 'xx': 'foo'} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- Ran 1897 tests in 20.582s FAILED (SKIP=10, failures=4) make[2]: *** [Makefile:54: unittest3] Error 1 make[2]: Leaving directory '/<<PKGBUILDDIR>>' make[1]: *** [debian/rules:11: override_dh_auto_test] Error 2 make[1]: Leaving directory '/<<PKGBUILDDIR>>' make: *** [debian/rules:7: build] Error 2 dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2 -------------------------------------------------------------------------------- Build finished at 2019-01-26T04:24:51Z Finished -------- +------------------------------------------------------------------------------+ | Cleanup | +------------------------------------------------------------------------------+ Not cleaning session: cloned chroot in use Keeping session: disco-amd64-9e2df49d-994c-41d4-85bf-b294a78a643c E: Build failure (dpkg-buildpackage died) ** Affects: cloud-init Importance: Undecided Assignee: Chad Smith (chad.smith) Status: In Progress ** Changed in: cloud-init Assignee: (unassigned) => Chad Smith (chad.smith) ** Changed in: cloud-init Status: New => In Progress -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to cloud-init. https://bugs.launchpad.net/bugs/1813383 Title: opennebula: fail to sbuild, bash environment var failure EPOCHREALTIME Status in cloud-init: In Progress Bug description: unittests are failing during packaging of cloud-init on disco during an sbuild due to failures in OpenNebula datasource unit tests. Unit tests are now seeing EPOCHREALTIME values returned because those env values have changed across the unit test run. OpenNebula datasource tries to exclude known bash -e env values that are known to change. and EPOCHREALTIME is one of the expected env variables that should continue to have a value delta. ====================================================================== FAIL: tests.unittests.test_datasource.test_opennebula.TestOpenNebulaDataSource.test_context_parser ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 161, in test_context_parser self.assertEqual(TEST_VARS, results['metadata']) AssertionError: {'VAR1': 'single', 'VAR2': 'double word', '[207 chars] '$'} != {'EPOCHREALTIME': '1548476675.477863', 'VAR[245 chars]e\n'} + {'EPOCHREALTIME': '1548476675.477863', - {'VAR1': 'single', ? ^ + 'VAR1': 'single', ? ^ 'VAR10': '\\', 'VAR11': "'", 'VAR12': '$', 'VAR2': 'double word', 'VAR3': 'multi\nline\n', 'VAR4': "'single'", 'VAR5': "'double word'", 'VAR6': "'multi\nline\n'", 'VAR7': 'single\\t', 'VAR8': 'double\\tword', 'VAR9': 'multi\\t\nline\n'} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Reading from /tmp/ci-TestOpenNebulaDataSource.ms6gmudd/seed/opennebula/context.sh (quiet=False) cloudinit.util: DEBUG: Read 262 bytes from /tmp/ci-TestOpenNebulaDataSource.ms6gmudd/seed/opennebula/context.sh cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: tests.unittests.test_datasource.test_opennebula.TestOpenNebulaDataSource.test_seed_dir_empty1_context ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 140, in test_seed_dir_empty1_context self.assertEqual(results['metadata'], {}) AssertionError: {'EPOCHREALTIME': '1548476675.848343'} != {} - {'EPOCHREALTIME': '1548476675.848343'} + {} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Reading from /tmp/ci-TestOpenNebulaDataSource.gu1w3vu_/seed/opennebula/context.sh (quiet=False) cloudinit.util: DEBUG: Read 0 bytes from /tmp/ci-TestOpenNebulaDataSource.gu1w3vu_/seed/opennebula/context.sh cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: tests.unittests.test_datasource.test_opennebula.TestOpenNebulaDataSource.test_seed_dir_empty2_context ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 147, in test_seed_dir_empty2_context self.assertEqual(results['metadata'], {}) AssertionError: {'EPOCHREALTIME': '1548476675.863058'} != {} - {'EPOCHREALTIME': '1548476675.863058'} + {} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Reading from /tmp/ci-TestOpenNebulaDataSource.b3f_3ztm/seed/opennebula/context.sh (quiet=False) cloudinit.util: DEBUG: Read 44 bytes from /tmp/ci-TestOpenNebulaDataSource.b3f_3ztm/seed/opennebula/context.sh cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ====================================================================== FAIL: test_no_seconds (tests.unittests.test_datasource.test_opennebula.TestParseShellConfig) ---------------------------------------------------------------------- Traceback (most recent call last): File "/<<PKGBUILDDIR>>/tests/unittests/test_datasource/test_opennebula.py", line 921, in test_no_seconds self.assertEqual(ret, {"foo": "bar", "xx": "foo"}) AssertionError: {'foo': 'bar', 'xx': 'foo', 'EPOCHREALTIME': '1548476676.329965'} != {'foo': 'bar', 'xx': 'foo'} - {'EPOCHREALTIME': '1548476676.329965', 'foo': 'bar', 'xx': 'foo'} + {'foo': 'bar', 'xx': 'foo'} -------------------- >> begin captured logging << -------------------- cloudinit.util: DEBUG: Running command ['bash', '-e'] with allowed return codes [0] (shell=False, capture=True) --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- Ran 1897 tests in 20.582s FAILED (SKIP=10, failures=4) make[2]: *** [Makefile:54: unittest3] Error 1 make[2]: Leaving directory '/<<PKGBUILDDIR>>' make[1]: *** [debian/rules:11: override_dh_auto_test] Error 2 make[1]: Leaving directory '/<<PKGBUILDDIR>>' make: *** [debian/rules:7: build] Error 2 dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2 -------------------------------------------------------------------------------- Build finished at 2019-01-26T04:24:51Z Finished -------- +------------------------------------------------------------------------------+ | Cleanup | +------------------------------------------------------------------------------+ Not cleaning session: cloned chroot in use Keeping session: disco-amd64-9e2df49d-994c-41d4-85bf-b294a78a643c E: Build failure (dpkg-buildpackage died) To manage notifications about this bug go to: https://bugs.launchpad.net/cloud-init/+bug/1813383/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp