-
Task
-
Resolution: Done
-
P1: Critical
-
None
-
None
-
None
-
7d4f7f9616681234b2bc3f5e481e3745a17fdbcb a54c49c72795a86a79a24e2f1f8811cb121cf7a4
In our test scripts for Qt<=4, we had a feature which would automatically attempt to retry commands which failed for certain reasons, depending on the output.
For example, if a script ran a git command like x "git clone git://gitorious.org/qt/qt.git";, and the command failed and output to stderr gitorious.org[0: 2a02:c0:1014::1]: errno=No route to host, the script would automatically assume that a transient network error had occurred, and retry the command.
Currently the test scripts in qt/qtqa.git are missing this feature. We should add it, but learn from the mistakes of the previous implementation:
- each command's logic should be put into its own class, which can be tested separately from the others
- it should be obvious that this magic is happening, and easy to disable or customize it (or maybe it should be opt-in rather than opt-out)
The implementation should most likely use Proc::Reliable from CPAN, although currently we have not tested that module on Windows.
This task is completed when there is a generic infrastructure for this in place, with at least two commands handled, and with autotests.