{"ref":"refs/heads/inactivity-monitor","commits":[{"author":{"name":"Lucas Meneghel Rodrigues","email":"8ad3460456640ab580599f5440c5a8d925a620b9@redhat.com"},"sha":"3f65c579d2537de0bcaf44c76a7fa4f2c2125aa2","message":"virt.kvm_vm: Introduce background error queue\n\nIntroduce a background error queue to store exceptions\nhappened during virt background tasks (such as aexpect\ninstances and screendump thread). With this queue,\nit is possible to store exception information useful\nto fail tests at certain points. Examples:\n\n* We can detect qemu suffered a crash from inside the\n  aexpect thread\n* We can detect screen inactivity on the screendump\n  thread and fail the unattended install test without\n  having to wait the entire timeout of the test\n\nThe next patches will introduce that functionality.\n\nImplementation consists in a virt test attribute,\nbackground_error test, that is a Queue.Queue()\n(thread safe), background threads that want to\nmake use of it need to catch the exception they\nwant to propagate and store it in the queue\nusing put(sys.exc_info).\n\nThen in every convenient situation to do so, subtests\ncan call the test.verify_bg_errors() method\n(in the beginning or end of each test loop, where\noperations such as migrations are executed).\n\nSigned-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>","url":"https://api.github.com/repos/lmr/autotest/commits/3f65c579d2537de0bcaf44c76a7fa4f2c2125aa2"},{"author":{"name":"Lucas Meneghel Rodrigues","email":"8ad3460456640ab580599f5440c5a8d925a620b9@redhat.com"},"sha":"a12946782dab88b0f28fc4b1d8e009d9dbde37c0","message":"virt.virt_env_process: fail tests due to guest screen inactivity\n\nIn a very specific test (unattended_install), all OEM installer\nmechanism will present intense guest screen activity, so screen\ninactivity for a relatively long time almost always mean something\nwent very wrong and the installer is stuck.\n\nSo create a mechanism to detect screen inactivity for any vm that\ntakes place in the test - have a timer for each vm that is reset\nonly if the next screenshot is different than the previous. So,\nif the vm got stuck somewhere at the install process, for example:\n\n* Wrong Windows CD Key\n* Guest OS does not see a disk controller due to lack of drivers\n* BIOS got stuck\n\nAnd other similar cases, we'll have a test failure before the full\ntest timeout (that for Windows may be up to 3 hours). So we save\ntime and know about such situations earlier.\n\nThe patch introduces the parameters on base.cfg, subtests.cfg, and\nalso introduces a sensible default for inactivity treshold (30 min).\n\nSigned-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>","url":"https://api.github.com/repos/lmr/autotest/commits/a12946782dab88b0f28fc4b1d8e009d9dbde37c0"},{"author":{"name":"Lucas Meneghel Rodrigues","email":"8ad3460456640ab580599f5440c5a8d925a620b9@redhat.com"},"sha":"3242e2ed1ce58598b4a43c5280f294c0e3e4d152","message":"virt tests: Introduce inactivity watcher for unattended_install\n\nWith this patch, if the screen got inactive during unattended\ninstall for more than 30 minutes, an error will be thrown. For\nany other tests, we'll just log a debug message, since in other\ntests we do not expect to see much action going on the screen.\n\nSigned-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>","url":"https://api.github.com/repos/lmr/autotest/commits/3242e2ed1ce58598b4a43c5280f294c0e3e4d152"},{"author":{"name":"Lucas Meneghel Rodrigues","email":"8ad3460456640ab580599f5440c5a8d925a620b9@redhat.com"},"sha":"fd7ac407bdaab06aaf88dbad0a311d45b1bf6ca6","message":"virt.kvm_vm: Introduce vm.verify_userspace_crash()\n\nIn order to capture any qemu crashes, introduce a method\nthat scans qemu output and throws an error if a core dump\ncondition is found.\n\nSigned-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>","url":"https://api.github.com/repos/lmr/autotest/commits/fd7ac407bdaab06aaf88dbad0a311d45b1bf6ca6"},{"author":{"name":"Lucas Meneghel Rodrigues","email":"8ad3460456640ab580599f5440c5a8d925a620b9@redhat.com"},"sha":"7d059fb4f37f056882f1a98d245ef93b1c29b6ac","message":"KVM test: Verify qemu process before throwing monitor exceptions\n\nWhen qemu suffers a segmentation fault, monitor code might still\nwant to issue commands to a VM, masking the segmentation fault.\n\nSo, pass the vm object to the monitor code, and before throwing\nmonitor exceptions, verify the state of the qemu process (whether\nit crashed or not), and throw the QemuSegFaultError if the process\ncrashed:\n\n22:08:44 DEBUG| QemuSegFaultError: Qemu crashed: /bin/sh: line 1:  6847\nAborted                 (core dumped)\n\nThis will make analyzing such failures much easier.\n\nSigned-off-by: Lucas Meneghel Rodrigues <lmr@redhat.com>","url":"https://api.github.com/repos/lmr/autotest/commits/7d059fb4f37f056882f1a98d245ef93b1c29b6ac"}],"head":"7d059fb4f37f056882f1a98d245ef93b1c29b6ac","push_id":50875969,"size":5}