Hello,
There were increasing Android build times during last month again (going over 3.5hrs). Yesterday, I re-created the seed, but that didn't improve times match. I did more stats on builds and it turns out that we spend almost 1.5hrs in copying ever-growing overlay collection to the slaves via sluggish CopyToSlave Jenkins plugin.
That's issues known for at least half-year, and was in queue for being reworked. I didn't work on android-build closely for few months, but now that I'm back on maintenance, I'd like to start with fixing this long-overdue issue.
The idea was to pull all the needed overlay, straight to a slave. The complication here was handling of license protected files. ci.linaro.org had the same issue, and used a script to handle automatic downloads for some time. However, as of now, it was switched to other process and the script git bitrotted with recent linaro-license-protection codebase changes. I took a look at revamping it, but then though that it may be a good idea to use simpler and more explicit process, following closely click-thru usage. So, if you want to use a license-protected binaries in a build, you'd need to specify:
ACCEPT_LICENSE=<license_id>
Where <license_id> is id under which license is registered in linaro-license-protection. One good way to figure it out is to read the license page at all (well, as HTML source, the id is included in some links). Wording of variable name (as well as of commands in underlying implementation) is also explicit to point that its usage construes license acceptance.
I prototypes these changes using https://android-build.linaro.org/builds/~pfalcon/panda-jb-gcc47-tilt-trackin... which is down to 2h10m build time. I'm ready to migrate all builds tomorrow, while we're early in cycle start.
Please let me know if there're any issues with approach or proposed migration timeframe, otherwise let's make android-build rock again.
Thanks, Paul
Linaro.org | Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro http://twitter.com/#%21/linaroorg - http://www.linaro.org/linaro-blog