Travis CI is a hosted[1] continuous integration service used to build and test software projects hosted on GitHub,[2] Bitbucket, GitLab, Perforce, Apache Subversion and Assembla.[3]
Developer(s) | Idera |
---|---|
Written in | Ruby |
Platform | Web |
Type | Continuous integration |
License | Proprietary |
Website | travis-ci |
Travis CI was the first CI service that provided services to open-source projects for free but as December 2020 no longer does so.[4] TravisPro provides custom deployments of a proprietary version on the customer's own hardware.
The main software is proprietary. Some adjacent tools[5] like API clients are open-source.
Configuration
editTravis CI is configured by adding a file named .travis.yml
, which is a YAML format text file, to the root directory of the repository.[6] 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.
Architectures
editThe default CPU architecture used in Travis CI builds is amd64
. It is used when no arch key is present. You can identify for which CPU architecture a build job is run via the GUI:
- In the build job list, there’s a specific label and architecture name based on arch tag value.
- In the build job view, the same specific label is displayed near the operating system identifier.
Architecture | Open Source | Commercial |
---|---|---|
amd64 | Yes | Yes |
ppc64le | Yes | No |
s390x | Yes | No |
arm64 (v8) | Yes | No |
arm64-graviton2 (v8) | Yes | Yes |
It is possible to use Docker in multiple CPU architecture-based builds within an LXD container. You may need a specific CPU architecture-compliant Docker image as a base or ensure relevant libraries required by your build are added to your Dockerfile
.
Operation
editWhen 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 particular pattern. Travis CI will then check out the relevant branch and run the commands specified in .travis.yml, which usually builds the software and run any automated tests. When that process has been completed, Travis notifies the developer(s) in the way it has been configured to do so[6]—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).
The Travis CI blog is mainly run by Travis's Software Engineer, Montana Mendy. [7]
Company
editThe company is headquartered in Berlin, Germany, and was founded in 2011.[8] In 2012 the project experienced significant growth[9] and launched a crowd funding campaign to fund further development[10] which was sponsored by dozens of technology companies.[11]
In January 2019, it was announced that the company had been acquired by Idera, Inc.[12]
In March 2019, Travis CI infrastructure suffered a massive outage from March 27 to March 29.[13][14][15]
In March 2020, Travis CI introduced 'The Cookbook' written by Montana Mendy with tutorials for common use cases.[16]
In November 2020, Travis CI announced the shutdown of travis-ci.org
by December 31, 2020, with all existing and new accounts migrating to travis-ci.com
. Despite the official pledge to keep "open source accounts completely free under travis-ci.com
",[17] open-source projects report that their build jobs stalled.[18] Travis CI is no longer free for open source accounts. Travis CI only offers non-renewable sign-on bonus of "10K credits to use over a 30 day period" meant for evaluation of the paid features.[19]
See also
editReferences
edit- ^ "travis-ci/README.md". GitHub. Retrieved 24 February 2019.
- ^ "Customizing the Build: What Repository Providers or Version Control Systems Can I Use?". Retrieved 24 February 2019.
- ^ "Test your Bitbucket projects with Travis CI". Bitbucket.org. Atlassian. Retrieved 2 April 2020.
- ^ Bell, Adam Gordon (7 January 2021). "Migrating Your Open Source Builds Off Of Travis CI". Earthly. Retrieved 1 May 2024.
- ^ Travis CI at GitHub with many repositories with MIT License
- ^ a b Tim Heckel (18 February 2013). "Meet Travis CI: Open Source Continuous Integration". InfoQ. Retrieved 24 February 2019.
- ^ Mendy, Montana (6 December 2022). "Travis CI Blog". Retrieved 6 December 2022.
- ^ "About Us | Travis CI – Testing your Building Blocks since 2011". Travis CI. Retrieved 28 August 2022.
- ^ Fuchs, Sven (30 December 2012). "The Travis CI Blog: 2012 at Travis CI - what a blast!". blog.travis-ci.com. Retrieved 24 February 2019.
- ^ Grzesiak, Brad (7 February 2012). "All you need is love.travis-ci.org". Retrieved 24 February 2019.
- ^ "Thank you, sponsors". love.travis-ci.com. Retrieved 24 February 2019.
- ^ Haase, Konstantin (23 January 2019). "Travis CI joins the Idera family". Retrieved 24 February 2019.
- ^ Fay, Joe (29 March 2019). "Travis CI users left hanging as platform lies down • DEVCLASS". DEVCLASS. Retrieved 29 October 2020.
- ^ "Slow booting Linux builds". www.traviscistatus.com. Retrieved 29 October 2020.
- ^ "Incident review for slow booting Linux builds outage". blog.travis-ci.com.
- ^ Mendy, Montana (30 November 2020). "A Short Journey into Source Control Branching and Release Patterns". Retrieved 30 November 2020.
- ^ "Open Source at Travis CI - An Update". blog.travis-ci.com. Retrieved 28 December 2020.
- ^ ".org -> .com migration unexpectedly comes with a plan change for OSS. What exactly is the new deal?". travis-ci.community. Retrieved 28 December 2020.
- ^ "Billing Overview". Travis CI Documentation. Retrieved 26 November 2023.
External links
edit