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.

FeaturesEdit

Name Platform License Builders: Windows Builders: Java Builders: other Notification Integration, IDEs Integration, other
Apache Gump Python Apache 2.0 Un­known Ant, Maven 1 Un­known Email Un­known Un­known
AppVeyor Hosted, Self-Hosted Proprietary Visual Studio, MSBuild, Psake No Custom Script, PowerShell Email, HipChat, Slack, Catlight No GitHub, Bitbucket, Kiln, Windows Azure
Azure DevOps Server (formerly TFS and 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
Bamboo Web container Proprietary MSBuild,[2] NAnt,[3] Visual Studio[4] Ant,[5] Maven 1-2-3[6] Custom script, command-line tool, Bash, Xcode,[7] Phing,[8] Grunt, Grails[9] 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
Web Services, Bitbucket, GitHub, GitLab, Google Cloud Services, Heroku, Modulus
Buildbot Python GPL Command-line Command-line Command-line Email, Web, GUI, IRC Un­known Un­known
BuildMaster Cross-platform Proprietary Yes Yes Cross-platform command-line Email, custom No Many
GitLab Cross-Platform, Self-Hosted Proprietary, MIT Yes[10] Maven,[11] Gradle[12] SSH, Shell, VirtualBox, Parallels,Docker, Kubernetes)[13] Email, Web, Slack and others[14] WebIDE[15] Many
GoCD Cross-platform Apache 2.0 Command-line Command-line Command-line Email, hipchat, Slack, Gerrit, Gitter, Riemann etc No GitHub
Jenkins 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 Un­known GitHub, Bitbucket, Heroku, AWS, Code Climate,[16] Cloud 66
Travis CI Hosted MIT No Ant, Maven, Gradle[17] 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,[18] Xcode,[19] 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
Vexor Hosted Proprietary No Un­known Ruby, Clojure, Scala, Python, Node.js, Go, Rust, Haskell Email, HipChat, Slack Un­known GitHub, Bitbucket, Gitlab

SCM system supportEdit

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. The table shows some popular SCMs and whether they are supported by the CI software.

Name AccuRev BitKeeper CA Harvest ClearCase CVS Darcs Git GNU Bazaar Integrity Mercurial Perforce Plastic PVCS StarTeam Subversion Surround Synergy Team Concert TFVC Vault Visual SourceSafe
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[20] No No No No No No
Azure DevOps Server No No No No No No Yes No No No No No No No Yes No No No Yes No No
Bamboo Yes[21] No No Yes Yes No Yes No No Yes Yes No No No Yes No No No Yes[22] 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
Jenkins Yes Yes Yes Yes Yes Yes[23] Yes Yes Yes[24] Yes Yes Yes[25] Yes Yes Yes Yes[26] Yes[27] Yes[28] Yes Yes[29] 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[30] No Yes Yes No No Yes Yes No No No Yes Yes Yes
Vexor No No No No No No Yes No No No No No No No No No No No No No No

ReferencesEdit

  1. ^ Integration, Continuous (2007). Continuous Integration: Improving Software Quality and Reducing Risk. Pearson Education. ISBN 9780321630148.
  2. ^ "MSBuild".
  3. ^ "NAnt".
  4. ^ "Visual Studio".
  5. ^ "Ant".
  6. ^ "Maven".
  7. ^ "Xcode".
  8. ^ "Phing".
  9. ^ "Grails".
  10. ^ "Install GitLab Runner on Windows | GitLab".
  11. ^ "GitLab Maven Repository | GitLab".
  12. ^ "JUnit test reports | GitLab".
  13. ^ "Executors | GitLab".
  14. ^ "Project integrations | GitLab".
  15. ^ "Web IDE | GitLab".
  16. ^ Code Climate "Getting Started with Code Climate Quality: Setting Up Test Coverage".
  17. ^ "Building a Java project in Travis CI".
  18. ^ "Configuring PowerShell build in TeamCity".
  19. ^ "Configuring Xcode build in TeamCity".
  20. ^ "Build Environment".
  21. ^ "AccuRev Repository Plugin".
  22. ^ "TFS Repository".
  23. ^ "Darcs Plugin - Jenkins - Jenkins Wiki".
  24. ^ https://wiki.jenkins-ci.org/display/JENKINS/PTC+Integrity+Plugin
  25. ^ "PlasticSCM Plugin - Jenkins - Jenkins Wiki".
  26. ^ "Surround SCM Plugin - Jenkins - Jenkins Wiki".
  27. ^ "Synergy Plugin - Jenkins - Jenkins Wiki".
  28. ^ https://wiki.jenkins-ci.org/display/JENKINS/Team+Concert+Plugin
  29. ^ https://wiki.jenkins-ci.org/display/JENKINS/Vault+Plugin
  30. ^ https://plugins.jetbrains.com/plugin/8886-bazaar

Further readingEdit