Jenkins is the standard for onsite build-servers
December 05, 2016

Jenkins is the standard for onsite build-servers

Ken Yee | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User

Overall Satisfaction with Jenkins

It's used in parallel with Bamboo. The iOS developers use Jenkins to do their builds. For Android, our official CI builds are done on Bamboo, but we also use Jenkins for build testing non-feature branches and for integration testing with emulators so we don't tie up the main Bamboo server which is also used for backend builds. Jenkins being able to run everywhere with lots of third party plugins is why I've always used it for cross-platform projects. Because of the huge userbase, just about every use case is covered. Pipeline has also made it a lot closer to the ease of use of CircleCI in that project build config files can be shared between projects much more easily than the old Jenkins project .xml files.
  • Cross platform
  • Lots of third party plugins
  • Lots of examples (although Pipeline examples are little bare currently)
  • The ugly UI is something that should be addressed but the Blue UI project (in Beta) looks really good.
  • There should be a better way to handle redundancy/failover with the main server (Google reported this in their study as well).
  • Log file should be shipped off to another server so they don't become a bottleneck (also mentioned by Google).
  • Keeps projects running smoothly
  • Verifies that all branches are safe to merge (tests are good, and code builds)
  • Helps make consistent builds for release
I've used these others as well:
TeamCity
- has master slave concept but master is also not load balance-able like Jenkins.
- nice that you can centralize scripts (not as much of a selling point now that Jenkins has Pipelines
- doesn't have Pipeline so it's all or nothing for a build to complete
Bamboo
- less control of build process but nice integration with Bitbucket changes that can kick off builds easily; don't know much about it because IT controls it
- doesn't have Pipeline so it's all or nothing for a build to complete
Works well for cross-platform builds where there is a Jenkins master who is willing to maintain the server, update the slaves, etc., to keep everything running smoothly. For teams who want a simpler tool, have a look at CircleCI...scripting is simpler but note that you have little control over your slaves (when I tried using it with an Android device, I had to keep updating the Android SDK before each build so builds were a lot slower than doing something similar on Jenkins).