CI for wayland (buildbot).
Eoff, Ullysses A
ullysses.a.eoff at intel.com
Mon Nov 11 11:19:04 PST 2013
Hopefully I didn't come across as trying to discourage you or anyone else from contributing in this realm.
I think it's great you're exploring this for Wayland! I look forward to seeing your solution come together and think it'll be very useful ;-).
From: Artsiom Anikeyenka [mailto:arty.anikey at gmail.com]
Sent: Monday, November 11, 2013 9:55 AM
To: Eoff, Ullysses A
Cc: wayland-devel at lists.freedesktop.org
Subject: Re: CI for wayland (buildbot).
Ok, cool then I'll just be working on that letting everyone know about the status (just for fun at least). Regarding your concerns:
1) Time and effort - people will be joining, I'm sure. In the beginning I can handle it. I'll deal with ISP and later on we will be moving of course to some of "official" wayland servers.
2) Contributing slaves is not that hard and not neccessary requires direct access to the server (master). In the beginning we can just make it an email-request-based (with slave installation script) and later on we can create our own UI for configuring buildbot which is possible as buildbot config is just a python program (authorized users will be able to add slave support on the master themselves).
3) Buildbot UI (which is improving, I believe I've seen some plans on creating real cool one on buildbot side) will be used in the beginning only (and maybe not).
On Mon, Nov 11, 2013 at 8:15 PM, Eoff, Ullysses A <ullysses.a.eoff at intel.com<mailto:ullysses.a.eoff at intel.com>> wrote:
Currently, there is no "official" continuous integration (CI) tool for the Wayland community. However, there are several people and organizations that run Wayland CI on their own, each tailored to their specific tools, needs and environment.
If you want to provide a CI service to any community, then I think there is quite a bit to consider. First of all, it will be time consuming to manage... especially up front. Also, you would likely need a reasonable infrastructure (i.e. hardware and network) for the "master" service. Are you ready to devote time and support for that? How would your current ISP respond to running a "home" server like this?
Next, a Wayland software stack can be tailored for all sorts of environments and platforms, leading to a "lot" of different software/hardware build variants. IMHO, an "official" Wayland CI solution would probably need to cover all those variants to be generally useful to the entire Wayland community. And to support that, you'd likely want contributors to be able to easily "plug" their own slave variant(s) into the service. IIRC, setting up a Buildbot slave network requires some sort of direct access and privileges to the "master" server (to change the config scripts, restart the service, etc.).
I'm a strong supporter of CI and have used several tools like Buildbot, Jenkins, QuickBuild, and even custom solutions. Each one has their own strengths and weaknesses. I personally find that the Buildbot web UI is clunky and unpleasant to look at and master/slave configurations can be high maintenance (although I do love Python ;-). In that regard, I feel that Buildbot is more like a "framework" for developing a CI tool... not a "out-of-the-box" CI tool in itself.
Currently, my "Test Team" has been employing QuickBuild internally (using free OSS license) to run Wayland CI for several years now and we've been quite happy with it. I've thought about exposing this service to the community too but, of course, it would be costly and time consuming.
U. Artie Eoff
Intel Open Source Technology Center
From: wayland-devel-bounces at lists.freedesktop.org<mailto:wayland-devel-bounces at lists.freedesktop.org> [mailto:wayland-devel-bounces at lists.freedesktop.org<mailto:wayland-devel-bounces at lists.freedesktop.org>] On Behalf Of Artsiom Anikeyenka
Sent: Monday, November 11, 2013 5:26 AM
To: wayland-devel at lists.freedesktop.org<mailto:wayland-devel at lists.freedesktop.org>
Subject: CI for wayland (buildbot).
Do you have any of those running (I mean CI tools) (I didn't find any links)? If not then I can setup a buildbot<http://buildbot.net/>. Actually it's already runnig on my home machine. You can access it here<http://zorg.by:8010/builders/runtests/builds/10>.
This build indicates 1 failing test for "make check" in wayland project. I've just started and currently I'm working on setting up CI for the whole process of building as described here<http://wayland.freedesktop.org/building.html>.
Later on we can change the way buildbot builds stuff, and add more slaves (different platforms) which can be distributed over the internet. I chose buildbot because it's super flexible.
If you agree then I'll follow up with the "next-steps-email". BTW I'll be setting it up anyways :) to understand how wayland is built, so I just wanted to know if you want buildbot as the "official" CI tool for wayland (BTW I highly recommend it over the other tools like Jenkins or CC).
Any thoughts, feedback?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the wayland-devel