GNU Make is an open source and free build automation tool.
N/A
Travis CI
Score 7.3 out of 10
N/A
Travis CI is an open source continuous integration platform, that enables users to run and test simultaneously on different environments, and automatically catch code failures and bugs.
Makefiles are machine-readable documentation that make your workflow reproducible. If the build process is a very continuous flow of operations within scope, it will do it well and also act as a documentation of all the dependence. For some long-term projects, Make has been used extensively and being maintained to do the job.
TravisCI is suited for workflows involving typical software development but unfortunately I think the software needs more improvement to be up to date with current development systems and TravisCI hasn't been improving much in that space in terms of integrations.
It's simple and easy to get started (it can detect the language being used based on build configuration files like a Maven pom.xml).
It's free (as in beer) for open source projects.
It has a responsive staff (you can file issues on GitHub to ask for new languages or packages to be supported, and the turnaround time isn't too bad for the free offering).
The user interface is beautiful and easy-to-use, including features like live-tailing in-progress builds.
It supports specifying private environment variables and encrypted credentials, so that you can safely automate deployments (for example, pushing built docker images to DockerHub).
Travis CI is a fairly mature platform now, and most, if not all of the common complaints have been improved. This includes documentation and logs with color support.
TravisCI hasn't had much changes made to its software and has thus fallen behind compared to many other CI/CD applications out there. I can only give it a 5 because it does what it is supposed to do but lacks product innovation.
In general, it is fair to say the support is sufficient although we do not deal with support directly. There are a lot of forum people chiming in with suggestions or recommendations of particular usage or issues we run into. Since it is open software, patch and fixes will be available from time to time. A lot of information is available in the web now for knowing GNU Make from learning, example, teaching, etc.
After the private equity firm had bought this company the innovation and support has really gone downhill a lot. I am not a fan that they have gutted the software trying to make money from it and put innovation and product development second.
I'm a full-stack developer that has used various build tools, including Maven, Gradle, and NPM/yarn. For our C projects, I also investigated CMake and Ninja, but they seemed more difficult to learn and more tedious to work with. GNU Make is a single binary that can be easily downloaded, even for Windows under MingW32, is straightforward to learn, and works pretty well despite its age.
Jenkins is probably the leading choice for automation and has loads of features and a large community behind it, but it can be overkill for many projects. It also has more of a web 1.0 look and interface. CircleCI is another similar big competitor, but cannot compete with Travis CI's free account [in my opinion].