Re: Could there be a arch build test befre upload?
Joseph Smidt <email@example.com> writes:
> I've been maintaining texmaker which has originally built fine on all
> architectures but failed to build on arm after the last upload. Luckily
> for me one of the arm devs helped me out and uploaded a fixed version.
> He was able to test on arm and when it worked informed me.
> The experience got me thinking, wouldn't it be nice if all
> maintainers could test there packages on all architectures before they
> uploaded? Maybe a dbuildtest command before dupload which ran your
> package on the various architectures to test whether it builds. You
> could view all the build logs and if everything checks out you know the
> package is ready.
> The arm dev suggested using experimental for such a purpose,
> which I admit is a good idea, but isn't that more than is needed if all
> you want to test is whether it builds on all architectures. dbuildtest
> could be another sanity test on top of linda and lintian. Then you know
> in advance if the build would work.
> I just wondered what you all thought about this idea.
> Joseph Smidt
For this you need a place to put the source (experimental upload
queue), a controler (wanna-build) that tells what to build, a network
of systems to compile (buildd for each arch). Only thing you don't
need is the signing and uploading of debs. But you can read the buildd
log without waiting for an upload.
One problem with using experimental to test compile is that afaik the
buildds don't have access to incoming.d.o so you have to wait for the
daily dinstall pules before anything gets build. That pretty much
kills the idea.
Another problem is that when you find say an arm FTBFS then you want
to do many test build on arm till you found the bug. There is no need
to recompile every test upload on all the other archs.
So maybe experimental isn't quite the right place for this. But maybe
you could talk aba into reusing the experimental buildds with a
different interface and source repository so DDs can schedule builds
on specific archs directly. You would need a DAK to upload the source
to and then a way to tell the wanna-build to add the package only on
specific archs. Nothing a few lines of perl or php can't do.