Hi Vadim,
Just an update on what I have been doing with binaries and Buildbot.
I have now set up Buildbot to build and test our trees on Launchpad
after
every push (similar to Pushbuild at MySQL/Sun if you are familiar
with that):
http://askmonty.org/buildbot/index.html
For now we have only few (one) build slave. The plan of course is to
add more,
hopefully some of them volunteered from the community (hint :-).
I would be happy to make the infrastructure available to you as
well, ie. to
set it up to also track your Launcpad trees and build on your build
slaves
with your scripts and options. But you may prefer to control the
buildbot
master yourself; just let me know if you need a copy of my Buildbot
configuration files or if I can help with any questions in setting
it up.
I am currently working on getting all existing test failures visible
in the
Buildbot runs fixed (Valgrind errors mostly).
After that (next week I hope) I plan to turn to working on getting
Buildbot to
also produce binaries.
I will need to do some research in which platforms we need to build
for
(Debian/Ubuntu/CentOS/Suse/Generic? x86/amd64? Any others?), and which
configure / build options to use. Any help you can provide here
would be much
appreciated. I have lots of experience with scripting this kind of
thing, but
less so with the details of how people actually use the binaries and
what they
need (I have mostly build from source myself even for production). I
also plan
to look at what official Debian/Ubuntu packages provide, and at the
scripts
from OurDelta.
My vision is to have production and test of binaries fully
integrated into our
Buildbot infrastructure. I want it fully automated, so that binaries
are made
after every push, and so that problems with the binaries are dealt
with as an
integrated part of development just like any other problem. Ideally,
releasing
binaries would then just be a matter of picking the right files from
the
buildbot archives. It will take some work to get there of course,
but at least
that is the vision.
From what I have seen of Buildbot so far, I am hopeful that it will
be
sufficient for our needs. It seems to have all of the right ideas,
and many of
the necessary features are already there. Some stuff will be
missing, and my
plan is to spend the time to extend it as needed.
So for concrete plans next week, these currently are:
1. Setup build of generic binaries (.tar.gz) for Linux x86/amd64.
For this I
need to understand better how to deal with external dependencies.
Should I
link statically with libc? My impression is not to do this as I
think this
causes big problems with any type of plugin, but I also seem to
recall that
existing generic packages do this. Alternatively, I need to
understand which
version of glibc to use.
2. Work on getting build slave machines set up for this.
3. Get a first version running on Buildbot that produces the binaries.
After this I think will be Debian and Ubuntu binaries with apt-able
repositories, and then RPMs.
I think that's it for an update of current plans. Let me know if you
have any
questions/comments/suggestions. Especially any help on exact CFLAGS
and
./configure arguments to use would be very helpful.
- Kristian.
_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to : maria-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp