Hi all,

I've setup buildbot at enlightenment.org, initially it's running at a
different port, if it work out we may put it at
buildbot.enlightenment.org later.

     http://enlightenment.org:8010/


Worth checking:

     http://enlightenment.org:8010/waterfall  - time based table with
history: when things changed, what happened (compile, test...)
     http://enlightenment.org:8010/grid - quick view of the status of
each revision
     http://enlightenment.org:8010/console - commits and their impact


Concepts:

     ChangeSource: is something that may trigger a builder, I'm using
SVNPoller now for specific projects we care about (eina, eet, evas...)
     Scheduler: defines when something happens, I've set a build at
3am (enlightenment.org local time), 30 seconds after a commit to do a
quick build of that commit, 1 hour after the commit do a full rebuild
(clean, update...)
     Builder: defines how to do some build using a factory with steps.
I've a full-linux and quick-linux. clean-quick-linux triggers
quick-linux forcing clean before continuing (to use in case of
failures that need clean tree to recover)
     BuildSlaves: the machines that execute the builder recipes.

Our "quick" build: a quick build is undefined, then we need to define
that to our project. I've choosen to do the following, but it takes
too much time to my taste:
     - check and install package dependencies - required (fast if
nothing changed)
     - compile package - required (incremental build, usually fast)
     - make test - optional (depending on the test, it may take a
while, like eina)
     - make distcheck - optional (takes LOTS of time, but detect
missing files in EXTRA_DIST)
     - compile users - optional (incremental build, may take time --
build all packages that need this one. Like build edje if embryo
changed)

Note that the builds are already done out-of-tree, then we detect that
and missing files in the repository.

QUESTION: do you think make distcheck is required at this step? We
already do distcheck + make doc for packages in "full-linux" builder.

USING IT:
     - Web Interface: http://enlightenment.org:8010/
     - IRC bot: e-buildbot at #edevelop
     - JSON API: http://enlightenment.org:8010/json/help

I've enabled actions in the web interface, but you need the password.
If you want so, talk to me in private and send a random password to be
STORED IN CLEAR TEXT. It's just good to trigger rebuilds and stop
them.

Reminder: if you're forcing build of quick-* or clean-quick-*, you
must fill in PROJECT field of the form with the actual name, like
"eina" or "python-evas" (no prefixes)


NEXT STEPS:
     - Fill our packages, dependencies and options properly. I've done
a small subset and want people to help. Just change
trac.enlightenment.org/e/browser/trunk/SCRIPTS/buildbot/desc.py Let me
know if you need help with the file format.
     - Clean warnings from our code and tests
     - Create more tests to run


HELP NEEDED: if you have some big machine you can use as BuildSlave,
let me know. It may be behind a NAT or firewall. We need: Linux,
Windows, PS3 and MacOSX systems.

-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: barbi...@gmail.com
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

------------------------------------------------------------------------------
RSA(R) Conference 2012
Mar 27 - Feb 2
Save $400 by Jan. 27
Register now!
http://p.sf.net/sfu/rsa-sfdev2dev2
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to