Resolve "racing commands in hammer prepare-system"
Closes #2696 (closed).
-
a2ff7b1b hammer.py: unrelated fix for libsysrepo.so name -
488ccfac hammer.py: replace ~ with os.environ['HOME'] On rare occasion, the previously-used execute() would return empty output, which would cause the path to change, often resulting in a 'no such file or directory' error.
-
48c1b97b hammer.py: check Popen.poll() at the end There was a wrong assumption that the first call to Popen.poll() is always None. This is not the case when the process is fast enough to finish before it gets polled, in which case it is not None, but it is the return code instead. This caused some executes to have empty output.
The last commit is enough. The second commit is not necessary to fix the issue, but is it a good addition?
- https://jenkins.aws.isc.org/view/Kea-manual/job/kea-manual/job/ut-extended/179/ - this one froze, it might be due to changes in this MR, but the output cannot be seen because of jenkins issue
- https://jenkins.aws.isc.org/view/Kea-manual/job/kea-manual/job/ut-extended/180/ - tried again
Edited by Andrei Pavel