[GSoC] Progress Report

Rainer Müller raimue at macports.org
Tue Jun 6 11:55:28 UTC 2017

On 2017-06-06 04:15, Zero King wrote:
> 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.

I would reduce the complexity as much as possible. It should be easy to
get more computing power or disk space if needed.
> 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.

There is no need that this getopt binary has to be provided by another
MacPorts installation. As you are using Go, the other CI bot
functionality will also be binaries, right? Just ship an additional
getopt binary. Or modify mpbb not to need getopt, for example with
something like pure-getopt [1]. I really do not see that as a problem.

> 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.

My idea would be that the CI bot would call the mpbb scripts, while
capturing stdout/stderr to add additional markers for parseable output.

Maybe I am still missing something about the whole setup and you are
probably a few steps ahead with planning. Therefore I will stop arguing
about this now. Hopefully I will see how this is will work once you show
us the code. Looking forward to its release.

Happy hacking this week!


[1] https://github.com/agriffis/pure-getopt

More information about the macports-dev mailing list