[MacPorts] #55078: buildbot: exit early in portbuilder if port already built

MacPorts noreply at macports.org
Fri Oct 13 09:45:08 UTC 2017


#55078: buildbot: exit early in portbuilder if port already built
----------------------------+---------------------
 Reporter:  ryandesign      |      Owner:  admin@…
     Type:  enhancement     |     Status:  new
 Priority:  Normal          |  Milestone:
Component:  server/hosting  |    Version:
 Keywords:  buildbot        |       Port:
----------------------------+---------------------
 Although a portwatcher task checks if a port build should be attempted
 before scheduling portbuilder tasks, the portbuilder tasks don't recheck
 whether the port has in the mean time already been built. For example, if
 you schedule builds of zlib and minizip, and the minizip build
 [ticket:52766 goes first], it will build zlib as one of its dependencies.
 The subsequent build for zlib will have nothing useful left to do, but
 still goes through the motions of activating and then deactivating
 dependencies, which wastes time. See [https://lists.macports.org/pipermail
 /macports-dev/2017-October/036630.html my mailing list post].

 In many cases this is a minor inefficiency, but it turns into a major one
 if we try to schedule a large number of ports to be built at once on a new
 builder. We currently don't schedule builds of all ports on new builders,
 because it would be so inefficient and take the builder out of regular
 rotation for so long.

 I'd like portbuilder to be modified so that the first thing it does is
 check if the port's package exists locally. If so, skip everything else.
 This should be a much quicker check than what portwatcher does with mpbb-
 list-subports, since all the portbuilder check will have to do is check if
 the file returned by archive-path.tcl exists, so shouldn't add much
 overhead to normal builds.

--
Ticket URL: <https://trac.macports.org/ticket/55078>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list