On Mon, Jun 05, 2017 at 02:08:20PM +0200, Rainer Müller wrote:
On 2017-06-05 03:17, Zero King wrote:All information CI bot have access to is public, so I'm worried that someone would send PR bot data without submitting a PR at all.Make the PR bot pull data from Travis. The CI bot then only triggers the PR bot, which then checks for new unprocessed builds on Travis.
That's planned as an alternative fetch method. Travis won't keep any data except full build log and most of it would be useless for the PR bot. The CI bot would send less data to the PR bot and save resource for our server.
You asked about extraction of list of ports which is currently a combination of https://github.com/macports/macports-infrastructure/blob/f79cc559611e5f42dd26808f38cd0750beee12bf/buildbot/master.cfg#L32 and list-subports in mpbb. I guess the first function could be implemented in mpbb instead. And maybe mpbb could get some more branching (if-else statements) depending on whether it runs for "production" (buildbot) or "testing" (Travis). Or maybe some functionality from mpbb could even move to the MacPorts core.mpbb has a dependency on getopt, so it's not ideal for Travis since there's a time limit for each build and I'd like to save more time for actually testing ports.How is getopt relevant for the timing? If the dependency on getopt is a problem, let's find a portable solution for mpbb. Duplicating the exact same functionality we already have does not make sense to me.
getopt has to be installed in a different prefix to avoid conflicts with tested ports. It's not ideal to install another MacPorts on Travis VMs because it would be lost in the next build. mpbb is designed for Buildbot and archive uploads. It's too powerful for the CI bot and I only need several port commands in it. Travis only provides stdout & stderr mixed log so I need to make it parsable. The two bots could share code and implementing this part in two languages would be unnecessary work.
Rainer
-- Best regards, Zero King Don't trust the From address.
smime.p7s
Description: S/MIME cryptographic signature