diff options
| -rw-r--r-- | lib/oeqa/selftest/cases/testutils.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/oeqa/selftest/cases/testutils.py b/lib/oeqa/selftest/cases/testutils.py index 8d618a6..28087ca 100644 --- a/lib/oeqa/selftest/cases/testutils.py +++ b/lib/oeqa/selftest/cases/testutils.py | |||
| @@ -121,15 +121,21 @@ def verifyNotProvisioned(testInst, machine): | |||
| 121 | 121 | ||
| 122 | def verifyProvisioned(testInst, machine): | 122 | def verifyProvisioned(testInst, machine): |
| 123 | # Verify that device HAS provisioned. | 123 | # Verify that device HAS provisioned. |
| 124 | # First loop while waiting for the device to boot. | ||
| 124 | ran_ok = False | 125 | ran_ok = False |
| 125 | for delay in [5, 5, 5, 5, 10, 10, 10, 10]: | 126 | for delay in [5, 5, 5, 5, 10, 10, 10, 10]: |
| 126 | stdout, stderr, retcode = testInst.qemu_command('aktualizr-info') | 127 | stdout, stderr, retcode = testInst.qemu_command('aktualizr-info') |
| 127 | if retcode == 0 and stderr == b'' and stdout.decode().find('Fetched metadata: yes') >= 0: | 128 | if retcode == 0 and stderr == b'': |
| 128 | ran_ok = True | 129 | ran_ok = True |
| 129 | break | 130 | break |
| 130 | sleep(delay) | 131 | sleep(delay) |
| 131 | testInst.assertTrue(ran_ok, 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) | 132 | testInst.assertTrue(ran_ok, 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) |
| 133 | # Then wait for aktualizr to provision. | ||
| 134 | if stdout.decode().find('Fetched metadata: yes') < 0: | ||
| 135 | stdout, stderr, retcode = testInst.qemu_command('aktualizr-info --wait-until-provisioned') | ||
| 132 | 136 | ||
| 137 | testInst.assertFalse(retcode, 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) | ||
| 138 | testInst.assertEqual(stderr, b'', 'aktualizr-info failed: ' + stderr.decode() + stdout.decode()) | ||
| 133 | testInst.assertIn(b'Device ID: ', stdout, 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | 139 | testInst.assertIn(b'Device ID: ', stdout, 'Provisioning failed: ' + stderr.decode() + stdout.decode()) |
| 134 | testInst.assertIn(b'Primary ecu hardware ID: ' + machine.encode(), stdout, | 140 | testInst.assertIn(b'Primary ecu hardware ID: ' + machine.encode(), stdout, |
| 135 | 'Provisioning failed: ' + stderr.decode() + stdout.decode()) | 141 | 'Provisioning failed: ' + stderr.decode() + stdout.decode()) |
