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
