GithubHelp home page GithubHelp logo

nvdnkpr / travis-ci Goto Github PK

View Code? Open in Web Editor NEW

This project forked from travis-ci/travis-ci

0.0 2.0 0.0 14.82 MB

A distributed build system for the open source community.

Home Page: http://travis-ci.org

travis-ci's Introduction

Travis CI

Travis CI is a hosted continuous integration and deployment system. There are two versions of it, travis-ci.com for private repositories, and travis-ci.org for public repositories.

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

Documentation

Documentation for the Travis CI project can be found at http://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-core

travis-core holds most of the logic for Travis CI. This repository is shared across several other apps and holds the models, services, and other things that these apps need.

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.

travis-ci's People

Contributors

joshk avatar sferik avatar ifesdjeen avatar svenfuchs avatar roidrage avatar michaelklishin avatar ndbroadbent avatar rkh avatar drogus avatar dmathieu avatar kl-7 avatar sarahhodne avatar mmalecki avatar fxposter avatar parndt avatar tjeden avatar flippingbits avatar tilsammans avatar rubiii avatar banzaiman avatar sethvargo avatar franckverrot avatar sweed avatar lukeredpath avatar bsiggelkow avatar dhiemstra avatar hoverlover avatar simi avatar antiarchitect avatar gilesbowkett avatar

Watchers

Navid Nikpour avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.