clstm icon indicating copy to clipboard operation
clstm copied to clipboard

Properly configure CI

Open kba opened this issue 8 years ago • 10 comments

It seems like the Circle CI continuous integration never worked. We can configure it with a circle.yml file, I can do that but I wouldn't know what to actually test beyond compilation.

kba avatar Oct 24 '16 16:10 kba

I'm actually able to configure the CircleCI setup from within the web interface. Upgraded to run on 14.04 now, trying to get the dependencies right.

kba avatar Oct 24 '16 17:10 kba

I am fine that the tests would just show us whether compilation is working or not. This sounds like a reasonable and doable start. Afterwards we could look closer at the tests which are already part of the repo, e.g. https://github.com/tmbdev/clstm/blob/master/run-tests

zuphilip avatar Oct 24 '16 17:10 zuphilip

https://github.com/tmbdev/clstm/blob/master/run-tests those are a bit heavy for testing PRs (multiple recompilations etc.)

kba avatar Oct 24 '16 17:10 kba

Compilation works and CircleCI is training away on the cmu set https://circleci.com/gh/tmbdev/clstm/96. I'll wait and see how that goes but eventually I'll just set echo "No tests yet" as the test command so we can at least smoke test pull requests until we come up with a simpler test.

kba avatar Oct 24 '16 19:10 kba

After two hours CircleCI stopped the build. After disabling the test as described, build passes. Takes about 2:30 minutes for fetching dependencies and compiling.

kba avatar Oct 24 '16 22:10 kba

Okay, this means we are testing currently if it can be installed, right?

zuphilip avatar Oct 24 '16 22:10 zuphilip

Right.

kba avatar Oct 24 '16 23:10 kba

Last I tried CI, the C++ compilers that the services had available were too outdated to work properly, and they lacked some C++ prerequisites. That's why I gave up on it temporarily.

TensorFlow uses Jenkins; maybe that's worth pursuing. CircleCI with Docker might be another route.

tmbdev avatar Oct 27 '16 21:10 tmbdev

Per default, CircleCI runs Ubuntu 12.04 containers but can be changed to 14.04 and after I did, it's a really nice service, easier to configure and more flexible than Travis, you can SSH into failed builds, parallelize etc.

kba avatar Oct 28 '16 07:10 kba

They added Ubuntu 14.04 support in Feb 2016. It's now the Default OS for New Projects

g++ 4.8 and 4.9 are available. It's possible to download deb packages for newer g++ and cache them.

amitdo avatar Oct 28 '16 10:10 amitdo