Background:  TravisCI is a startup providing managed continuous integration 
services with GitHub integration and YAML based configuration.  TravisCI is one 
of the few CI providers that will build a variety of OSX/MacOS builds for 
software projects.  Their pricing ranges from Free (for open source, 1 
concurrent job, to $489 monthly for 10 concurrent jobs).  

Problem: We’ve had a few OSX build issues slip into MXNet master in the past 
few weeks.  We’ve previously had a Travis CI based testing system that would 
have caught these issues.

Proposals so far:

1) Use TravisCI in it’s free mode for a very minimal sanity check on OSX.  If 
we compile the program, and for example run C++ unit tests we’re unlikely to 
run into problems with queued builds.  The total build time here should be less 
than 15 minutes.  Configuration should be quite simple and easy to maintain.  
Error messages should also be obvious to contributors.
2) Run clang in Linux with our current CI.  Building with clang should take 
less than 10 minutes, should flush out a large subset of the issues we’ve seen 
with OSX, and be quite easy to maintain.
3) Run full test-suites in TravisCI, equaling the level of coverage we provide 
to Linux in Jenkins.  This could require us to subscribe to a monthly package 
with Travis to ensure our build queue doesn’t grow to an unacceptable length.  
It may also require a volunteer to setup and maintain long-term.

I’d +1 #1 and #2 as I think those should be low-cost, low-maintence solutions 
that should catch the majority of the problems we’ve seen thus far.

-Kellen

Reply via email to