travis-ci

Free continuous integration platform for GitHub projects.

Github stars Tracking Chart

✋ 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 travis-ci.com! 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: https://travis-ci.community

For current outages and incidents such as slow network connections, subscribe to https://www.traviscistatus.com.

Other support issues may be directed to support@travis-ci.com where our support team will be glad to assist.

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

Documentation

Documentation for the Travis CI project can be found at
https://docs.travis-ci.com.

Other repositories

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

travis-api

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

travis-build creates the build
script for each job. It takes the configuration from the .travis.yml file and
creates a bash script that is then run in the build environment by
travis-worker.

travis-cookbooks

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

travis-hub

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

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

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

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

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

travis-web

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

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.

Main metrics

Overview
Name With Ownertravis-ci/travis-ci
Primary Language
Program language (Language Count: 0)
Platform
License:
所有者活动
Created At2011-02-28 06:30:40
Pushed At2024-06-04 20:25:10
Last Commit At2020-06-17 09:51:21
Release Count232
Last Release Namedeploy.2013-11-11.10-29 (Posted on 2013-11-11 11:29:50)
First Release Namev0.0.1 (Posted on )
用户参与
Stargazers Count8.5k
Watchers Count237
Fork Count720
Commits Count3.6k
Has Issues Enabled
Issues Count10218
Issue Open Count123
Pull Requests Count173
Pull Requests Open Count0
Pull Requests Close Count57
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private