Building all ports when setting up a new buildbot builder
Ryan Schmidt
ryandesign at macports.org
Wed Dec 3 06:57:36 PST 2014
On Dec 3, 2014, at 8:54 AM, Joshua Root wrote:
> On 2014-12-3 15:34 , Ryan Schmidt wrote:
>> On Dec 2, 2014, at 9:42 PM, Joshua Root wrote:
>>
>>> On 2014-12-3 13:38 , Ryan Schmidt wrote:
>>>> On Dec 2, 2014, at 8:39 AM, Joshua Root wrote:
>>>>
>>>>> On 2014-12-2 21:57 , Ryan Schmidt wrote:
>>>>>> I am assuming that if we set the portlist to e.g. "name:^[0-9a-d]" instead of "all" that it would work.
>>>>>
>>>>> No, it won't. You can't use regexes and it's not a list of port names,
>>>>> it's a list of portdirs.
>>>>
>>>> I see. But somehow the special keyword "all" is being handled; I assumed it was being passed on to `port` and that we could use any of the port-selection methods `port` allows. Is there a reason why it was not done that way?
>>>
>>> Because MPAB does a lot more than just run 'port install <something>'.
>>
>> The mpab readme, which is admittedly 4 years old and possibly outdated or completely inaccurate by now, shows an example of getting a list of ports by running a `port` command:
>>
>>
>>> To build only a certain set of ports you need a file containing the
>>> list of the port names. The `port list' command adds more information
>>> than you want here, like version and category. To create an list for
>>> mpab consumption, you can use something like this:
>>>
>>> port echo maintainer:YOURNAME > own_ports
>>>
>>> and then
>>>
>>> sudo ./mpab buildports own_ports
>>
>>
>> If that works, then it should also be able to handle:
>>
>> port echo name:^[0-9a-d] > own_ports
>> sudo ./mpab buildports own_ports
>
> But not `echo 'name:^[0-9a-d]' > own_ports`.
Sure, "echo 'name:^[0-9a-d]'" would not work, but "port echo 'name:^[0-9a-d]'" should.
> You can indeed put any list of port(dir)s you like in the text field
> when you force a build. (The documentation certainly predates subports.)
>
>>>> On Dec 2, 2014, at 8:40 AM, Daniel J. Luke wrote:
>>>>
>>>>> (and maybe also set things up to upload archives as they become available?)
>>>>
>>>> I don't know what that would involve, having not looked at the buildbot infrastructure that much. I just know that from the buildbot web interface, it's clear that uploading archives is currently implemented as a separate step, after building. (In fact, gathering archives is another separate step, currently.) So putting the gathering and uploading steps into the building step would involve rearranging some code.
>>>
>>> It has to be a separate step if we use buildbot's built-in support for
>>> uploading files.
>>
>> Though it's probably not too difficult to write a couple lines using curl to upload files manually.
>
> I eagerly await your patch. ;)
>
> Just uploading them in the build step doesn't help, they'll still sit
> there until the "deploy achives" step which signs them and moves them
> onto the packages server.
I'm probably not going to be working on this right now since it's not code I've worked on before and I have other things I'm working on right now.
More information about the macports-dev
mailing list