Comparison of continuous integration software

Last updated

This is a compendium of software tools that support continuous integration [1] .

Contents

Features

Name Platform License Builders: Windows Builders: Java Builders: otherNotification Integration, IDEs Integration, other
Apache Gump Python Apache 2.0Un­known Ant, Maven 1Un­known Email Un­knownUn­known
AppVeyor Hosted, Self-Hosted Proprietary Visual Studio, MSBuild, PsakeNoCustom Script, PowerShell Email, HipChat, Slack No GitHub, Bitbucket, Kiln, Windows Azure
Azure DevOps Server (formerly TFS and VSTS)Cross-platformProprietary, MIT MSBuild, Visual Studio Ant, Maven, Gradle, Android C, C++, Go, Groovy, Java, Node.js, Perl, PHP, Python, Ruby Email, SOAP 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 NoAnt, Maven, Gradle Elixir, Go, Haskell, Node.js, PHP, Python, Ruby, .NET CoreDesktop, Email, Slack, SMSNo Web Services, Bitbucket, GitHub, GitLab, Google Cloud Services, Heroku, Modulus
Buildbot Python GPL Command-lineCommand-lineCommand-line Email, Web, GUI, IRC Un­knownUn­known
BuildMaster Cross-platform Proprietary YesYesCross-platform command-line Email, customNoMany
CircleCI Hosted, Self-Hosted Proprietary Command-lineCommand-lineCommand-line Email Visual Studio Code GitHub, Bitbucket, GitLab
GitLab Hosted, Self-HostedProprietary, MITYes [10] Maven, [11] Gradle [12] SSH, Shell, VirtualBox, Parallels, Docker, Kubernetes, Custom [13] Email, Web, Slack and others [14] Gitpod, [15] WebIDE [16] Many
GoCD Cross-platform Apache 2.0Command-lineCommand-lineCommand-lineEmail, 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, 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 APIUn­known GitHub, Bitbucket, Heroku, AWS, Code Climate, [17] Cloud 66
Travis CI Hosted MIT No Ant, Maven, Gradle [18] C, C++, Clojure, Elixir, Erlang, Go, Groovy, Haskell, Java, Node.js, Perl, PHP, Python, Ruby, Rust, Scala, Smalltalk Email, Campfire, HipChat, IRC, Slack, CCMenu, CCTrayNo 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 analysiscommand-line, PowerShell, [19] Xcode, [20] Rake, FxCop Email, XMPP, RSS, IDE, SysTray Eclipse, Visual Studio, IntelliJ IDEA, RubyMine, PyCharm, PhpStorm, WebStorm JetBrains YouTrack, Jira, Bugzilla, FishEye, FindBugs, PMD, dotCover, NCover
Vexor Hosted Proprietary NoUn­known Ruby, Clojure, Scala, Python, Node.js, Go, Rust, Haskell Email, HipChat, Slack Un­known GitHub, Bitbucket, GitLab
Buildkite Self-hosted MIT Command-line [21] Unknown Ubuntu, Debian, Red Hat/CentOS, FreeBSD, macOS, Linux, Docker, AWS, Elastic CI Stack for AWS, Google CloudEmail, Basecamp, Slack, webhooks, pagerdutyUnknown Okta, Google Workspace, GitHub, Azure AD, custom SAML, GraphQL, Amazon EventBridge, CC Menu, CCTray, Artifactory [22]
TektonKubernetesApache 2.0YesYesYesYesYesMany

Version control support

The following table compares notable continuous integration software on the basis of version control support.

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 NoNoNoNoYesNoNoNoNoNoNoNoNoNoYesNoNoNoNoNoNo
AppVeyor NoNoNoNoNoNoYesNoNoYesNoNoNoNoYes [23] NoNoNoNoNoNo
Azure DevOps Server NoNoNoNoNoNoYesNoNoNoNoNoNoNoYesNoNoNoYesNoNo
Bamboo Yes [24] NoNoYesYesNoYesNoNoYesYesNoNoNoYesNoNoNoYes [25] NoNo
Buddy NoNoNoNoNoNoYesNoNoNoNoNoNoNoNoNoNoNoNoNoNo
BuildBot NoNoNoNoYesYesYesYesNoYesYesNoNoNoYesNoNoNoNoNoNo
BuildMaster YesNoNoYesYesNoYesNoYesYesYesYesYesNoYesYesNoNoYesYesYes
Jenkins YesYesYesYesYesYes [26] YesYesYes [27] YesYesYes [28] YesYesYesYes [29] Yes [30] Yes [31] YesYes [32] Yes
OpenMake Software MeisterYesNoYesYesYesNoYesNoYesNoYesNoYesYesYesNoYesYesYesYesYes
Semaphore (software) NoNoNoNoNoNoYesNoNoNoNoNoNoNoNoNoNoNoNoNoNo
TeamCity YesNoNoYesYesNoYesYes [33] NoYesYesNoNoYesYesNoNoNoYesYesYes
Vexor NoNoNoNoNoNoYesNoNoNoNoNoNoNoNoNoNoNoNoNoNo

Related Research Articles

<span class="mw-page-title-main">Graphviz</span> Software package for graph visualization

Graphviz is a package of open-source tools initiated by AT&T Labs Research for drawing graphs specified in DOT language scripts having the file name extension "gv". It also provides libraries for software applications to use the tools. Graphviz is free software licensed under the Eclipse Public License.

<span class="mw-page-title-main">IntelliJ IDEA</span> Integrated development environment

IntelliJ IDEA is an integrated development environment (IDE) written in Java for developing computer software written in Java, Kotlin, Groovy, and other JVM-based languages. It is developed by JetBrains and is available as an Apache 2 Licensed community edition, and in a proprietary commercial edition. Both can be used for commercial development.

Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages. The Maven project is hosted by The Apache Software Foundation, where it was formerly part of the Jakarta Project.

The following tables compare general and technical information for many wiki software packages.

Zend Studio is a commercial, proprietary integrated development environment (IDE) for PHP developed by Zend Technologies, based on the PHP Development Tools (PDT) plugin for the Eclipse platform.

A source-code-hosting facility is a file archive and web hosting facility for source code of software, documentation, web pages, and other works, accessible either publicly or privately. They are often used by open-source software projects and other multi-developer projects to maintain revision and version history, or version control. Many repositories provide a bug tracking system, and offer release management, mailing lists, and wiki-based project documentation. Software authors generally retain their copyright when software is posted to a code hosting facilities.

Notable issue tracking systems, including bug tracking systems, help desk and service desk issue tracking systems, as well as asset management systems, include the following. The comparison includes client-server application, distributed and hosted systems.

<span class="mw-page-title-main">Hudson (software)</span> Continuous integration tool

Hudson is a discontinued continuous integration (CI) tool written in Java, which runs in a servlet container such as Apache Tomcat or the GlassFish application server. It supports SCM tools including CVS, Subversion, Git, Perforce, Clearcase and RTC, and can execute Apache Ant and Apache Maven based projects, as well as arbitrary shell scripts and Windows batch commands. The primary developer of Hudson was Kohsuke Kawaguchi, who worked for Sun Microsystems at the time. Released under the MIT License, Hudson is free software.

Confluence is a web-based corporate wiki developed by Australian software company Atlassian. Atlassian wrote Confluence in the Java programming language and first published it in 2004. Confluence Standalone comes with a built-in Tomcat web server and hsql database, and also supports other databases.

Jira is a proprietary product developed by Atlassian that allows bug tracking, issue tracking and agile project management. Jira is used by a large number of clients and users globally for project, time, requirements, task, bug, change, code, test, release, sprint management.

In FOSS development communities, a forge is a web-based collaborative software platform for both developing and sharing computer applications.

Bitbucket is a Git-based source code repository hosting service owned by Atlassian. Bitbucket offers both commercial plans and free accounts with an unlimited number of private repositories.

<span class="mw-page-title-main">Jenkins (software)</span> Open source automation server

Jenkins is an open source automation server. It helps automate the parts of software development related to building, testing, and deploying, facilitating continuous integration, and continuous delivery. It is a server-based system that runs in servlet containers such as Apache Tomcat. It supports version control tools, including AccuRev, CVS, Subversion, Git, Mercurial, Perforce, ClearCase, and RTC, and can execute Apache Ant, Apache Maven, and sbt based projects as well as arbitrary shell scripts and Windows batch commands.

Java code coverage tools are of two types: first, tools that add statements to the Java source code and require its recompilation. Second, tools that instrument the bytecode, either before or during execution. The goal is to find out which parts of the code are tested by registering the lines of code executed when running a test.

iDempiere Community Powered Enterprise. Full Open Source Business Suite

iDempiere. Community Powered Enterprise, also known as OSGi + ADempiere, is an open source Enterprise Resource Planning (ERP) software that is fully navigable on PCs, tablets and smartphones, it also has customer relationship management (CRM) and supply chain management (SCM) functions. It is in contrast to proprietary or most other open source ERP solutions driven only by a community of supporters.

<span class="mw-page-title-main">PlantUML</span> Open-source software tool

PlantUML is an open-source tool allowing users to create diagrams from a plain text language. Besides various UML diagrams, PlantUML has support for various other software development related formats, as well as visualisation of JSON and YAML files.

<span class="mw-page-title-main">Wiki.js</span> Wiki engine written in JavaScript

Wiki.js is a wiki engine running on Node.js and written in JavaScript. It is free software released under the Affero GNU General Public License. It is available as a self-hosted solution or using "single-click" install on the DigitalOcean and AWS marketplace.

<span class="mw-page-title-main">Katalon Studio</span> Automation testing software tool

Katalon Platform is an automation testing software tool developed by Katalon, Inc. The software is built on top of the open-source automation frameworks Selenium, Appium with a specialized IDE interface for web, API, mobile and desktop application testing. Its initial release for internal use was in January 2015. Its first public release was in September 2016. In 2018, the software acquired 9% of market penetration for UI test automation, according to The State of Testing 2018 Report by SmartBear.

References

  1. Integration, Continuous (2007). Continuous Integration: Improving Software Quality and Reducing Risk. Pearson Education. ISBN   9780321630148.
  2. "MSBuild | Bamboo Server 8.0 | Atlassian Documentation". confluence.atlassian.com.
  3. "NAnt | Bamboo Server 8.0 | Atlassian Documentation". confluence.atlassian.com.
  4. "Visual Studio | Bamboo Server 8.0 | Atlassian Documentation". confluence.atlassian.com.
  5. "Ant | Bamboo Server 8.0 | Atlassian Documentation". confluence.atlassian.com.
  6. "Maven | Bamboo Server 8.0 | Atlassian Documentation". confluence.atlassian.com.
  7. "Xcode | Bamboo Server 8.0 | Atlassian Documentation". confluence.atlassian.com.
  8. "Phing | Bamboo Server 5.10 | Atlassian Documentation". confluence.atlassian.com.
  9. "Grails | Bamboo Server 5.11 | Atlassian Documentation". confluence.atlassian.com.
  10. "Install GitLab Runner on Windows | GitLab". docs.gitlab.com.
  11. "Maven packages in the Package Repository | GitLab". docs.gitlab.com.
  12. "Unit test reports | GitLab". docs.gitlab.com.
  13. "Executors | GitLab". docs.gitlab.com.
  14. "Project integrations | GitLab". docs.gitlab.com.
  15. "Gitpod Integration | GitLab". docs.gitlab.com.
  16. "Web IDE | GitLab". docs.gitlab.com.
  17. Code Climate "Getting Started with Code Climate Quality: Setting Up Test Coverage".
  18. "Travis CI Documentation". docs.travis-ci.com.
  19. "PowerShell | TeamCity On-Premises". TeamCity On-Premises Help.
  20. "Xcode Project | TeamCity On-Premises". TeamCity On-Premises Help.
  21. "Installing Buildkite agent". buildkite.com.
  22. "Integrations- Buildkite Docs". buildkite.com.
  23. "Build Environment".
  24. "Atlassian Marketplace". marketplace.atlassian.com.
  25. "Atlassian Marketplace". marketplace.atlassian.com.
  26. "Darcs Plugin - Jenkins - Jenkins Wiki".
  27. "PTC Windchill RV&S CM". PTC Windchill RV&S CM.
  28. "PlasticSCM Plugin - Jenkins - Jenkins Wiki".
  29. "Surround SCM Plugin - Jenkins - Jenkins Wiki".
  30. "Synergy Plugin - Jenkins - Jenkins Wiki".
  31. "Team Concert". Team Concert.
  32. "SourceGear Vault". SourceGear Vault.
  33. "Bazaar - TeamCity Plugin". JetBrains Marketplace.

Further reading