Travis CI

This is an old revision of this page, as edited by JC713 (talk | contribs) at 02:41, 19 April 2019 (Added SVG logo). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Travis CI is a hosted, distributed[2] continuous integration service used to build and test software projects hosted at GitHub.[3]

Travis CI
Developer(s)Travis CI community
Written inRuby
PlatformWeb
TypeContinuous integration
LicenseMIT License[1]
Websitetravis-ci.org (Free) travis-ci.com (Pro)

Open source projects may be tested at no charge via travis-ci.org. Private projects may be tested at travis-ci.com on a fee basis. TravisPro provides custom deployments of a proprietary version on the customer's own hardware.

The source is technically free software and available piecemeal on GitHub under permissive licenses. The company notes, however, that the large number of tasks that a user needs to monitor and perform can make it difficult for some users to successfully integrate the Enterprise version with their own infrastructure.[4]

Configuration

Travis CI is configured by adding a file named .travis.yml, which is a YAML format text file, to the root directory of the repository.[5] This file specifies the programming language used, the desired building and testing environment (including dependencies which must be installed before the software can be built and tested), and various other parameters.

Operation

When Travis CI has been activated for a given repository, GitHub will notify it whenever new commits are pushed to that repository or a pull request is submitted. It can also be configured to only run for specific branches, or branches whose names match a specific pattern. Travis CI will then check out the relevant branch and run the commands specified in .travis.yml, which usually build the software and run any automated tests. When that process has completed, Travis notifies the developer(s) in the way it has been configured to do so[5]—for example, by sending an email containing the test results (showing success or failure), or by posting a message on an IRC channel. In the case of pull requests, the pull request will be annotated with the outcome and a link to the build log, using a GitHub integration.

Travis CI can be configured to run the tests on a range of different machines, with different software installed (such as older versions of a programming language implementation, to test for compatibility),[6] and supports building software in numerous languages, including C, C++, C#, Clojure, D, Erlang, F#, Go, Apache Groovy, Haskell, Java, JavaScript, Julia, Perl, PHP, Python, R, Ruby, Rust, Scala and Visual Basic.[7] Several high-profile open source projects are using it to run builds and tests on every commit, such as Plone, Ruby on Rails, and Ruby.[8][9][10] As of February 2013, over 8056 JavaScript projects use it.[5]

Integration

Travis CI supports integration with external tools such as coverage analyzers or static analyzers. In the case of Coverity Scan, for instance, Travis CI can run the build stage under Coverity's cov-build tool, and submit the result for analysis if the build succeeds.[11]

Company

The company is headquartered in Berlin, Germany and was founded in 2011.[12] In 2012 the project experienced significant growth[13] and launched a crowd funding campaign to fund further development[14] which was sponsored by dozens of technology companies.[15]

In January 2019 it was announced that the company has been acquired by Idera.[16]

See also

References

  1. ^ Travis CI LICENSE
  2. ^ "travis-ci/README.md". Retrieved 2019-02-24.
  3. ^ "Customizing the Build: What Repository Providers or Version Control Systems Can I Use?". Retrieved 2019-02-24.
  4. ^ Meyer, Mathias (2015-06-19). "How We Improved the Installation and Update Experience for Travis CI Enterprise". Retrieved 2019-02-24.
  5. ^ a b c Tim Heckel (18 Feb 2013). "Meet Travis CI: Open Source Continuous Integration". InfoQ. Retrieved 2019-02-24.
  6. ^ Ben Welsh (14 June 2012). "Test your Django app with Travis CI". LA Times Data Desk. Retrieved 2019-02-24.
  7. ^ "Travis documentation". Retrieved 2019-02-24.
  8. ^ "Integrate with Travis-CI". Retrieved 2019-02-24.
  9. ^ Manuel Pais (23 Feb 2012). "Travis CI Announces Support for Java and Plans for Travis Pro". InfoQ. Retrieved 2019-02-24.
  10. ^ David (2011-07-27). "Rails now tested on Travis CI". Retrieved 2019-02-24.
  11. ^ "Travis CI Integration". Retrieved 2019-02-24.
  12. ^ "Travis CI | CrunchBase". Crunchbase. Retrieved 2019-02-24.
  13. ^ Fuchs, Sven (2012-12-30). "The Travis CI Blog: 2012 at Travis CI - what a blast!". blog.travis-ci.com. Retrieved 2019-02-24.
  14. ^ Grzesiak, Brad (7 Feb 2012). "All you need is love.travis-ci.org". Retrieved 2019-02-24.
  15. ^ "Thank you, sponsors". love.travis-ci.com. Retrieved 2019-02-24.
  16. ^ Haase, Konstantin (2019-01-23). "Travis CI joins the Idera family". Retrieved 2019-02-24.