Hi,
I recently discovered continuous integration tools, and this is great! The
principle is to build a project and run some tests in different
environments at each commit (continuously). Each build is made from a clean
new distro image. You prepare some scripts to install the dependencies, and
some other scripts to build the project and run some other tests. Then you
can check the result somewhere, on a webpage for example.
A lot of services exist: Travis, Jenkins, Wercker etc.

This is great to easily spot regressions on projects that can run on
several environments, such as denemo.

I played a bit with Travis-ci and denemo:
https://travis-ci.org/azmeuk/denemo . It is synchronized with my github
account: https://github.com/azmeuk/denemo
For the moment the only test done is compilation, but it is very flexible
and it is possible to run some unit tests. Unfortunately, there is no test
suite in denemo :). However, a good non-regression test could be to launch
the program, check that commands are correctly launched for instance, and
close it just after.

It works great with gcc and clang, and fails with mingw as I did not
prepared a good script to run. Jeremiah, if you want to help me there, you
are welcome :) Your gub fork fail to download ImageMagick.

The main drawback here is that Travis seem to only works with Github. Other
repositories are available if you pay. To use continuous integration with
denemo, it is either needed to use another service or copy each revision
into a github repository. Create a synchronized github clone of the
savannah repository can easily be done. Jenkins for instance is a free ci
system, but to use Jenkins, a dedicated host is needed.

Well, I would like to know your thoughts about this. Do you like the idea ?
Which service do you prefer etc. Should I commit my Travis scripts to
master if someone is interested ?
_______________________________________________
Denemo-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/denemo-devel

Reply via email to