buildbot build time

Ryan Schmidt ryandesign at macports.org
Wed Oct 25 23:23:09 UTC 2017


On Oct 25, 2017, at 03:28, db wrote:
> On 25 Oct 2017, at 07:35, Mojca Miklavec wrote:
>> On 23 October 2017 at 10:40, db wrote:
>>> On 9 Oct 2017, at 12:46, Mojca Miklavec wrote:
>>>> That info is easy to read and collect from the buildbot. The keyword is: "to collect".
>>> I checked https://build.macports.org/json/help, but couldn't find it.
>> For example:
>> - https://build.macports.org/json/builders/ports-10.13_x86_64-builder/builds/10627?as_text=1
>> which corresponds to
>> - https://build.macports.org/builders/ports-10.13_x86_64-builder/builds/10627
>> 
>> The idea would be to write a script to iterate through all numbers
>> from 1 on and store results somewhere.
>> 
>> If you want the time estimate specifically, here might be the relevant
>> information:
>> 
>>     "name": "install-port",
>> ...
>>     "times": [
>>       1508901749.648058,
>>       1508901850.387383
>>     ]
>> 
>> I guess the difference represents the seconds spent building the port.
> 
> Thanks. I was searching for "to collect" there and in base, to no avail.
> 
> Those are the start/end epochs that I need to subtract, for a single port.
> 
> How can I correlate portname to buildnumber?

I don't think scraping information from buildbot json files is the right way to collect this data. If we want to collect it, the buildbot scripts could be modified to do so.

But as I said before, I don't think the information is useful to collect. Besides the fact that the buildbot worker machines have different hardware specs than user hardware, not all of the buildbot workers run on the same hardware. A build will go faster on our High Sierra worker than on the Sierra worker, because the High Sierra worker has a faster processor. In addition, the buildbot workers are virtual machines, with multiple VMs running on a single host. So a build may be faster or slower depending on whether the other VMs that run on the same host are busy or not.

If all you want to do is display on a web site somewhere that a particular build of a port took a particular amount of time on our buildbot workers, ok. But I wouldn't try to use this information to, for example, modify MacPorts base to have it offer the user a prediction of how long the port will take to build on their system, because I don't think we can accurately predict that.



More information about the macports-users mailing list