[MacPorts] #59286: Mirror distfiles immediately after a commit
MacPorts
noreply at macports.org
Mon Oct 14 21:40:05 UTC 2019
#59286: Mirror distfiles immediately after a commit
----------------------------+---------------------
Reporter: ryandesign | Owner: admin@…
Type: enhancement | Status: new
Priority: Normal | Milestone:
Component: buildbot/mpbb | Version:
Resolution: | Keywords:
Port: |
----------------------------+---------------------
Comment (by ryandesign):
Replying to [ticket:59286 ryandesign]:
> 2. Files are not mirrored until right before they're built. This is a
problem if all of the builders for 10.9+ are busy. For example, right now,
all builders except one have been busy for days building all the p5.30
ports. Commits for other port updates happened after that, but they are
waiting, and so their files have not been mirrored. Meanwhile, users of
10.6-10.8 will learn of those updates when they `port sync`, but they
might not be able to upgrade their ports if upstream uses restrictive SSL.
Our 10.6-i386 builder is behind the others and has not yet reached the
p5.30 ports commit, so it is still working through older updates. But
because the buildbot updates the ports tree to current before each build,
it already knows about the sqlite3 update, and tries to build it as a
dependency of other ports, but fails to fetch it, so I have had to take
that builder offline.
In fact it's worse than this: the files might never get mirrored at all.
Consider: During the days that the p5.30 ports were being built, sqlite3
was updated. After the p5.30 builds finished on the 10.9 builder, a build
of another port started, which had sqlite3 somewhere in its dependency
chain, so sqlite3 got built and deployed—but not mirrored, because it
wasn't in the list of portfiles modified in that commit. Later, when the
builder got around to
[https://build.macports.org/builders/ports-10.9_x86_64-watcher/builds/28251
the commit that actually updated sqlite3], it saw that sqlite3 had already
been deployed and
[https://build.macports.org/builders/ports-10.9_x86_64-watcher/builds/28251/steps/subports/logs/stdio
excluded it from the list]. The distfile would not have been mirrored at
all, were it not for the fact that the sqlite3 port happens to have other
subports that still needed to be built.
If we mirrored distfiles right away, before scheduling builds, we would
avoid that problem as well.
--
Ticket URL: <https://trac.macports.org/ticket/59286#comment:4>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list