Comparison of continuous integration software

This is a compendium of continuous integration software that supports a software engineering practice, continuous integration,[1] in which developers' changes are immediately tested and reported when they are added to the mainline code base. The comparison of various continuous integration tools is done on the basis of platform, license, builders and Integration IDEs.

Features

Name Platform License Builders: Windows Builders: Java Builders: other Notification Integration, IDEs Integration, other
Abstruse CI Cross-Platform, Self-Hosted Proprietary, MIT No Ant, Maven, Gradle, Android C, C++, Go, Groovy, Java, Node.js, Perl, PHP, Python, Ruby No No GitHub, Bitbucket, Gitlab, Gogs
AnthillPro Cross-platform Proprietary MSBuild, NAnt, Visual Studio Ant, Maven 1-2-3 Shell script, batch script, cross-platform command-line, Groovy, Make, RTC Jazz, TFS Build, Custom Script Interpreter Email, XMPP, RSS, Systray Eclipse, Visual Studio Many
Apache Continuum JDK, web container Apache 2.0 Unknown Maven 1-2-3 Shell script[2] Mail, XMPP and Google Talk, MSN, IRC, report deployment with wagon Unknown Unknown
Apache Gump Python Apache 2.0 Unknown Ant, Maven 1 Unknown Email Unknown Unknown
AppVeyor Hosted Proprietary Visual Studio, MSBuild, Psake No Custom Script, PowerShell Email, HipChat, Slack, Catlight No GitHub, Bitbucket, Kiln, Windows Azure
Bamboo Web container Proprietary MSBuild,[3] NAnt,[4] Visual Studio[5] Ant,[6] Maven 1-2-3[7] Custom script, command-line tool, Bash, Xcode,[8] Phing,[9] Grunt, Grails[10] XMPP, Google Talk, Email, RSS, Remote API, HipChat IntelliJ IDEA, Eclipse, Visual Studio FishEye, Jira, Clover, Bitbucket, GitHub
Buddy Cross-platform Proprietary No Ant, Maven, Gradle Elixir, Go, Haskell, Node.js, PHP, Python, Ruby, .NET Core Desktop, Email, Slack, SMS No Amazon Web Services, Bitbucket, GitHub, GitLab, Google Cloud Services, Heroku, Modulus
Buildbot Python GPL Command-line Command-line Command-line Email, Web, GUI, IRC Unknown Unknown
BuildMaster Cross-platform Proprietary Yes Yes Cross-platform command-line Email, custom No Many
CABIE LAMP GPL2 Unknown Unknown Unknown Web Unknown Unknown
CircleCI Hosted Proprietary No Maven, Gradle[11] Yes[12] Email, Web[13] No GitHub, Bitbucket, Heroku
CruiseControl Cross-platform BSD-style NAnt, Rake, Xcode Phing, Apache Ant, Maven catch-all 'exec' Email, CCTray Eclipse Unknown
CruiseControl.NET Cross-platform BSD-style MSBuild, NAnt, Visual Studio Unknown Command-line Email, CCTray, RSS Unknown Unknown
Drone Cross-platform Apache 2.0 No Ant, Maven, Gradle[14] Docker[15], Java, Node.js, Python, Go, Elixir, Scala[16] WeChat, Matrix, Discord, Email, GTalk, Telegram, Facebook, Line, Gitter, HipChat, Slack[17] No GitHub[18], Bitbucket, Gitlab, Gitea, Gogs, Coding
GoCD Cross-platform Apache 2.0 Command-line Command-line Command-line Email, hipchat, Slack, Gerrit, Gitter, Riemann etc No GitHub
Jenkins-Hudson Web container Creative Commons and MIT MSBuild, NAnt, Batch Script Ant, Maven 2, Kundo CMake, Gant, Gradle, Grails, Phing, Rake, Ruby, SCons, Python, shell script, command-line Android, Email, Google Calendar, IRC, XMPP, RSS, Twitter, Slack, Catlight, CCMenu, CCTray Eclipse, IntelliJ IDEA, NetBeans Bugzilla, Google Code, Jira, Bitbucket, Redmine, FindBugs, Checkstyle, PMD and Mantis, Trac, HP ALM
OpenMake Software Meister Cross-platform Proprietary MSBuild, NAnt, Visual Studio Ant, Maven 1-2-3 Shell script, batch script, cross-platform command-line, Groovy, Make, RTC Jazz, TFS Build, Custom Script Interpreter Email, XMPP, RSS, Systray Eclipse, Visual Studio Bugzilla, Google Code, Jira, Bitbucket, Redmine, FindBugs, Checkstyle, PMD and Mantis, Trac
Semaphore (software) Hosted Proprietary No Maven, Gradle Ruby, Java, Python, Node.js, PHP, Clojure, C/C++, Elixir, Erlang, Go, Rake, command-line Email, Campfire, HipChat, Slack, Flowdock, Webhooks, Remote API Unknown GitHub, Bitbucket, Heroku, AWS, Code Climate, Cloud 66
Travis CI Hosted MIT No Ant, Maven, Gradle[19] C, C++, Clojure, Elixir, Erlang, Go, Groovy, Haskell, Java, Node.js, Perl, PHP, Python, Ruby, Rust, Scala, Smalltalk Email, Campfire, HipChat, IRC, Slack, Catlight, CCMenu, CCTray No GitHub, Heroku
TeamCity Web container Proprietary MSBuild, NAnt, Visual Studio, ReSharper-based .NET code analysis Ant, Maven 2-3, Gradle, IntelliJ IDEA-based build and code analysis command-line, PowerShell,[20] Xcode,[21] Rake, FxCop Email, XMPP, RSS, IDE, SysTray, Catlight Eclipse, Visual Studio, IntelliJ IDEA, RubyMine, PyCharm, PhpStorm, WebStorm JetBrains YouTrack, Jira, Bugzilla, FishEye, FindBugs, PMD, dotCover, NCover
Team Foundation Server, Visual Studio Team Services (VSTS) Cross-platform Proprietary, MIT MSBuild, Visual Studio Ant, Maven, Gradle, Android C, C++, Go, Groovy, Java, Node.js, Perl, PHP, Python, Ruby Email, SOAP, Catlight Visual Studio, Eclipse, IntelliJ IDEA, Android Studio, Visual Studio Code GitHub, Jenkins, Slack, Hipchat, FindBugs, Checkstyle, PMD
Vexor Hosted Proprietary No Unknown Ruby, Clojure, Scala, Python, Node.js, Go, Rust, Haskell Email, HipChat, Slack Unknown GitHub, Bitbucket, Gitlab

SCM system support

The following table compares the features of some of the most popular Continuous Integration software on the basis of the Source Control Management or the Version Control Management which is an essential part of CI Software system. Some of the popular SCMs are given and if they are supported or not by the CI is what is mentioned in the table.

Name AccuRev BitKeeper CA Harvest ClearCase CVS Darcs Git GNU Bazaar Integrity Mercurial Perforce Plastic PVCS StarTeam Subversion Surround Synergy Team Concert Team Foundation Server Vault Visual SourceSafe
AnthillPro Yes No Yes Yes Yes No Yes No Yes Yes Yes No Yes Yes Yes No Yes Yes Yes Yes Yes
Apache Continuum No No No Yes[2] Yes[2] No Yes[2] Yes[2] No Yes[2] Yes[2] No No Yes[2] Yes[2] No Yes[2] No No No Yes[2]
Apache Gump No No No No Yes No No No No No No No No No Yes No No No No No No
AppVeyor No No No No No No Yes No No Yes No No No No Yes[22] No No No No No No
Bamboo Yes[23] No No Yes Yes No Yes No No Yes Yes No No No Yes No No No Yes[24] No No
Buddy No No No No No No Yes No No No No No No No No No No No No No No
BuildBot No No No No Yes Yes Yes Yes No Yes Yes No No No Yes No No No No No No
BuildMaster Yes No No Yes Yes No Yes No Yes Yes Yes Yes Yes No Yes Yes No No Yes Yes Yes
CABIE No No No No Yes No No No No No Yes No No No Yes No No No No No No
CruiseControl No No No Yes Yes Yes Yes No Yes Yes Yes No No Yes Yes Yes No No Yes No Yes
CruiseControl.NET Yes Yes No Yes Yes No Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes No Yes Yes Yes
Distelli No No No No No No Yes No No Yes No No No No No No No No No No No
Drone No No No No No No Yes[25] No No No No No No No No No No No No No No
Jenkins-Hudson Yes Yes Yes Yes Yes Yes[26] Yes Yes Yes[27] Yes Yes Yes[28] Yes Yes Yes Yes[29] Yes[30] Yes[31] Yes Yes[32] Yes
OpenMake Software Meister Yes No Yes Yes Yes No Yes No Yes No Yes No Yes Yes Yes No Yes Yes Yes Yes Yes
Semaphore (software) No No No No No No Yes No No No No No No No No No No No No No No
TeamCity Yes No No Yes Yes No Yes Yes[33] No Yes Yes No No Yes Yes No No No Yes Yes Yes
Team Foundation Server No No No No No No Yes No No No No No No No Yes No No No Yes No No
Vexor No No No No No No Yes No No No No No No No No No No No No No No

References

  1. Integration, Continuous (2007). Continuous Integration: Improving Software Quality and Reducing Risk. Pearson Education. ISBN 9780321630148.
  2. 1 2 3 4 5 6 7 8 9 10 11 "Continuum Features". Continuum. Apache Software Foundation. 2013-09-23. Retrieved 2014-03-03.
  3. "MSBuild".
  4. "NAnt".
  5. "Visual Studio".
  6. "Ant".
  7. "Maven".
  8. "Xcode".
  9. "Phing".
  10. "Grails".
  11. "Language Guide: Java".
  12. "Language Support and Demo Applications With Guides". Retrieved December 8, 2017.
  13. "Enabling Web and Email Notifications". Retrieved December 8, 2017.
  14. "drone-with-java: An example of how to test Java code". Drone Demos. 7 January 2018. Retrieved 9 February 2018.
  15. "Documentation: Pipelines". docs.drone.io.
  16. "Drone Demos". GitHub. Retrieved 2018-02-09.
  17. "Notifications". plugins.drone.io. Retrieved 2018-02-09.
  18. "GitHub". docs.drone.io. Retrieved 2018-02-09.
  19. "Building a Java project in Travis CI".
  20. "Configuring PowerShell build in TeamCity".
  21. "Configuring Xcode build in TeamCity".
  22. http://www.appveyor.com/docs/installed-software#version-control-systems
  23. "AccuRev Repository Plugin".
  24. "TFS Repository".
  25. "drone-git: Drone plugin for cloning Git repositories". drone-plugins. 3 February 2018.
  26. https://wiki.jenkins-ci.org/display/JENKINS/Darcs+Plugin
  27. https://wiki.jenkins-ci.org/display/JENKINS/PTC+Integrity+Plugin
  28. https://wiki.jenkins-ci.org/display/JENKINS/PlasticSCM+Plugin
  29. https://wiki.jenkins-ci.org/display/JENKINS/Surround+SCM+Plugin
  30. https://wiki.jenkins-ci.org/display/JENKINS/Synergy+Plugin
  31. https://wiki.jenkins-ci.org/display/JENKINS/Team+Concert+Plugin
  32. https://wiki.jenkins-ci.org/display/JENKINS/Vault+Plugin
  33. https://plugins.jetbrains.com/plugin/8886-bazaar

Further reading

  • Paul M. Duvall, Steve Matyas, Andrew Glover. Continuous Integration: Improving Software Quality and Reducing Risk. ISBN 9780321630148.
  • Ching, Maria Odea; Porter, Brett. Apache Maven 2 Effective Implementation: Build and Manage Applications with Maven, Continuum, and Archiva. Packt Publishing Ltd. ISBN 9781847194558.
  • Melymuka, Volodymyr. TeamCity 7 Continuous Integration Essentials. Packt Publishing Ltd. ISBN 9781849693776.
  • List of Continuous Integration services
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.