Travis CI is a hosted
continuous integration
Continuous integration (CI) is the practice of integrating source code changes frequently and ensuring that the integrated codebase is in a workable state.
Typically, developers Merge (version control), merge changes to an Branching (revisio ...
service used to build and test software projects hosted on
GitHub
GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
,
Bitbucket
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.
Services Bitbucket Cloud
Bitbucket Cloud (pre ...
,
GitLab
GitLab is a software forge primarily developed by GitLab Inc. It is available as a community edition and a commercial edition.
History
GitLab was created in 2011 by Ukrainian programmer Dmitriy Zaporozhets as a side project written in Rub ...
,
Perforce
Perforce Software, Inc. is an American developer of software used for developing and running applications, including version control software, web-based repository management, developer collaboration, application lifecycle management, web applic ...
,
Apache Subversion
Apache Subversion (often abbreviated SVN, after its command name ''svn'') is a version control system distributed as open source under the Apache License. Software developers use Subversion to maintain current and historical versions of files su ...
and
Assembla.
Travis CI was the first CI service that provided services to open-source projects for free but as December 2020 no longer does so. TravisPro provides custom deployments of a proprietary version on the customer's own hardware.
The main software is proprietary. Some adjacent tools like API clients are open-source.
Configuration
Travis CI is configured by adding a
file named
.travis.yml
, which is a
YAML
YAML ( ) is a human-readable data serialization language. It is commonly used for configuration files and in applications where data is being stored or transmitted. YAML targets many of the same communications applications as Extensible Marku ...
format text file, to the root directory of the repository.
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
The 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.
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
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
In software development, distributed version control (also known as distributed revision control) is a form of version control in which the complete codebase, including its full history, is mirrored on every developer's computer. Compared to centr ...
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
A branch, also called a ramus in botany, is a stem that grows off from another stem, or when structures like veins in leaves are divided into smaller veins.
History and etymology
In Old English, there are numerous words for branch, includ ...
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
—for example, by sending an email containing the test results (showing success or failure), or by posting a message on an
IRC
IRC (Internet Relay Chat) is a text-based chat system for instant messaging. IRC is designed for group communication in discussion forums, called '' channels'', but also allows one-on-one communication via private messages as well as chat ...
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.
Company
The company is headquartered in Berlin, Germany, and was founded in 2011. In 2012 the project experienced significant growth and launched a
crowd funding
Crowdfunding is the practice of funding a project or venture by raising money from a large number of people, typically via the internet. Crowdfunding is a form of crowdsourcing and alternative finance, to fund projects "without standard financial ...
campaign to fund further development
which was sponsored by dozens of technology companies.
In January 2019, it was announced that the company had been acquired by
Idera, Inc.
In March 2019, Travis CI infrastructure suffered a massive outage from March 27 to March 29.
In March 2020, Travis CI introduced 'The Cookbook' written by Montana Mendy with tutorials for common use cases.
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
", open-source projects report that their build jobs stalled. 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.
See also
*
Continuous integration software
*
Comparison of continuous integration software
This is a compendium of software tools that support continuous integration.
Features
Version control support
The following table compares notable continuous integration software on the basis of version control
Version control (also k ...
References
External links
*
{{Use dmy dates, date=February 2020
Companies based in Berlin
Continuous integration
Free software programmed in Ruby
German companies established in 2011
Internet properties established in 2011
Open-source hosted development tools
Software companies of Germany
Software using the MIT license