Need help with travis-ci?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

8.2K Stars 820 Forks 3.6K Commits 125 Opened issues


Free continuous integration platform for GitHub projects.

Services available


Need anything else?

Contributors list

✋ Do not open new issues here! ✋

Travis CI

Travis CI is a hosted continuous integration and deployment system. You can now test and deploy open source and private projects on! You can read more about this change here.

Move to Forum

We are moving to our new community forum: Travis CI Community! As part of this move, we’ll be able to better follow and reply to threads, along with making it easier for you to find solutions and answers. We’ll be making our best efforts to answer currently existing threads, or directing them to the new community forum.

Link to the Community Forum:

For current outages and incidents such as slow network connections, subscribe to

Other support issues may be directed to [email protected] where our support team will be glad to assist.

This repository contains the central issue tracker for the Travis CI project.


Documentation for the Travis CI project can be found at

Other repositories

Travis CI consists of many different sub-projects. The main ones are:


travis-api is the Sinatra app that's responsible for serving our API. It responds to different HTTP endpoints and runs services in travis-core. Very little logic is in this repository.


travis-build creates the build script for each job. It takes the configuration from the

file and creates a
script that is then run in the build environment by travis-worker. This repository also hosts the source for language-specific scripts.


travis-cookbooks holds the Chef cookbooks that are used to provision the build environments.


travis-hub collects events from other apps and notifies other apps about the events. For example, it notifies travis-tasks about builds starting and finishing so notifications can be sent out.

travis-hub is also responsible for enqueueing jobs that have been created and enforcing the Quality of Service restrictions, such as the number of concurrent builds per user.


travis-listener receives notifications from GitHub whenever commits are pushed or pull requests are opened. They are then pushed onto RabbitMQ for other apps to process.


travis-logs receives log updates from travis-worker, saves them to the database and pushes them to the web client. When a job is finished, travis-logs is responsible for pushing the log to Amazon S3 for archiving.


travis-support holds shared logic for the different Travis CI apps. It is different from travis-core in that it holds more generic things, like how to run an async job or how to handle exceptions.


travis-tasks receives notifications from travis-hub and sends out notifications to the different notification providers as needed.


travis-web is our main Web client. It is written using Ember and communicates with travis-api to get information and gets live updates from travis-hub and travis-logs through Pusher.


travis-worker is responsible for running the build scripts in a clean environment. It streams the log output to travis-logs and pushes state updates (build starting/finishing) to travis-hub.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.