[Build] Specify timeout for test execution after agent was accessed #3468
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The top-level timeout specified in the global options of a Jenkins job is effective from the time the job starts its execution (waiting for the 'main' agents is excluded here). On the contrary timeouts defined on stage level include the time waiting for the stage's agent to become available.
In some cases (currently only for Mac) the same physical machine is used to execute multiple test-configurations. Consequently some configurations have to wait a significant amount of time for the executing agent to become available.
Therefore now timeouts are defined:
An inner one effective only for the actual test execution, sufficient to execute one configuration.
And an outer, global one, effective almost from when the job is triggered and with a larger value to cover the execution of multiple configurations.
The global one mainly exists in order to prevent pending tests to pile up in case the infrastructure is flawed.
Follow-up on
This should also fix the recent occasional timeout of Mac tests.
FYI @MohananRahul as you also asked for increased runtimes of mac tests (which are displayed similar to how the timeout is applied)