Opened 5 years ago

Last modified 5 years ago

#53978 new enhancement

buildbot: provide a way to rebuild all ports between two commits

Reported by: mojca (Mojca Miklavec) Owned by: admin@…
Priority: Normal Milestone:
Component: buildbot/mpbb Version:
Keywords: buildbot Cc:


It often happens that we have a random problem like inability to fetch sources for git, broken python or compiler, broken certificates, power outage etc. on one particular platform.

It would be very useful to be able to specify two shasums and then rebuild all the ports that have been modified between these two commits. We can already specify one particular commit, but providing a wider range would be really really helpful.

I would argue that we should always compile the latest version anyway, but the list of modified ports should come from the difference between two commits.

Change History (4)

comment:1 Changed 5 years ago by ryandesign (Ryan Schmidt)

It's easy enough to generate the list of ports on the command line, e.g.:

git diff --name-only 71b798f8a2d628b7345c1583e0f3664ddee3ffc4 2702b2dad73c4e5641994157d20df92d2b8a1ac7 | grep /Portfile$ | cut -d / -f 2 | sort -uf | xargs echo | pbcopy

Then paste that into the portlist field on the buildbot web interface.

comment:2 Changed 5 years ago by mojca (Mojca Miklavec)

Thank you very much for the hint.

But despite this trick I would still be in favour of supporting this out-of-the-box (providing just shasums rather than the full list of ports). We could use that same trick on the buildbot if needed.

comment:3 Changed 5 years ago by raimue (Rainer Müller)

I do not think we can do this on the buildbot, as a ForceScheduler does not take a change_filter as argument, which is currently used to extract the port names from the files.

comment:4 Changed 5 years ago by neverpanic (Clemens Lang)

Component: server/hostingbuildbot/mpbb
Note: See TracTickets for help on using tickets.