Jacoco timeout properties behaviour
We found out in https://teamcity-support.jetbrains.com/hc/en-us/community/posts/206155009-How-to-configure-timeout-for-jacoco-report-generation-process that we could set jacoco timeout with teamcity.jacoco.reportbuilder.timeoutsec but we noticed that when we set it to value lower than 270 seconds (we were not able to test out higher value), f.e. 30 seconds timeout was not respected (entire "Generating JaCoCo coverage…" took 1m 47 seconds and it passed).
In the meantime we found out that setting timeout property in jacocoReport service message (we found this out by accident) worked, but we tried multiple times and it was not really consistent regarding what works and what does not work (one time it worked with setting 30 seconds, another time it didn't work and result was that entire "Generating JaCoCo coverage…" took 1m 47 seconds and it passed).
Plus we didn't see that it's documented anywhere.
We wanted to ask:
- what are actual supported ways of setting timeout for generating jacoco report?
- what is the behavior of this parameter? Should it work with any value, or it assumes some minimum?
Please sign in to leave a comment.
Hi,
Thank you for your detailed investigation.
At the moment, the documented jacocoReport service message attributes are:
We do not see `timeout` documented there, so it is not considered a supported or officially documented parameter.
The supported way to configure the timeout is via the internal parameter:
teamcity.jacoco.reportbuilder.timeoutsec, which has a default value of 270 seconds.As far as I know, there is no limit on minimum values for this setting.
To better understand the behavior you are observing, could you please share:
• a screenshot showing how the parameter is configured,
• TeamCity version.
• the full build log for the affected build,
• and the corresponding TeamCity server logs from that time?
Files can be uploaded via https://uploads.jetbrains.com/. Please let us know the exact id after the upload.
This will help us investigate why the timeout does not appear to be respected in your case.