buildbot errors

Ryan Schmidt ryandesign at macports.org
Mon Nov 14 12:39:05 PST 2011


On Nov 14, 2011, at 00:01, Petr Vanek wrote:

> On Nov 14, 2011 (Monday), at 6:48 AM, Joshua Root wrote:
> 
>> On 2011-11-14 16:35 , Petr Vanek wrote:
>>> 
>>> On Nov 14, 2011 (Monday), at 1:18 AM, Ryan Schmidt wrote:
>>> 
>>>> The buildbot has a case-sensitive filesystem. The file is Qlipper.app, not qlipper.app.
>>> 
>>> thanks a lot. All is fixed now.
>>> 
>>> BTW is there any way how to test buildbot locally? Like "port builbot myport"?
>> 
>> You can certainly set up a buildbot locally; I did just that when I was first bringing it up. The config is at <https://svn.macports.org/repository/macports/contrib/buildbot/>.
>> 
>> I'm not sure what the benefit would be though?
> 
> Well, testing like this? ;)

*This* problem was because the buildbot hosted at Mac OS Forge has a case-sensitive filesystem, and your Mac and most others don't. Just installing the buildbot software on your computer will not magically give you a case-sensitive filesystem, so even if you had set up a buildbot, it wouldn't have helped you catch this problem.

If you do want to test for case-sensitivity issues, you can create a case-sensitive partition (or disk image) and install MacPorts on that. But it's a lot of trouble to go to when the buildbot will just send you an email about the problem if there is one.

The most common problem the buildbot finds is missing dependencies: something not declared in the port, but already installed on your system that was needed. You could test for this on your system by uninstalling all ports before installing your port. But again, that's a lot of trouble to go to when the buildbot will do it for you.


> I just thought about something like we have in OBS (https://build.opensuse.org/) where you can test package building locally for various platforms. Example: my host is opensuse 11.4 and I need to test package foobar if  it can be built on fedora 15
> 
> osc build --ccache Fedora_15 foobar
> 
> then all the build environment for fedora is created in my /tmp, chrooted (or something similar) and all is built locally so I won't take online resources for testing.

I think it would be astronomically difficult to get anything like that working on OS X. We can't even get a chroot at all working on Snow Leopard and up; other MacPorts developers have tried that and failed. That's why the buildbot doesn't run in a chroot. Getting a chroot, plus making it believe it was an earlier version of the OS than it is, with the corresponding required version of Xcode that only runs on that earlier OS, sounds impossible to me. It would be much easier to run an entire earlier version of OS X in virtualization.





More information about the macports-dev mailing list