.. | ||
addons | ||
api | ||
config | ||
enqueue | ||
event | ||
github | ||
logs | ||
mailer | ||
model | ||
notification | ||
requests | ||
services | ||
settings | ||
testing | ||
addons.rb | ||
advisory_locks.rb | ||
api.rb | ||
chunkifier.rb | ||
commit_command.rb | ||
engine.rb | ||
enqueue.rb | ||
errors.rb | ||
event.rb | ||
features.rb | ||
github.rb | ||
logs.rb | ||
mailer.rb | ||
model.rb | ||
notification.rb | ||
overwritable_method_definitions.rb | ||
README.markdown | ||
redis_pool.rb | ||
requests.rb | ||
secure_config.rb | ||
services.rb | ||
settings.rb | ||
states_cache.rb | ||
task.rb | ||
testing.rb | ||
travis_yml_stats.rb |
Travis Core directory overview
This folder, lib/travis
contains the main code for the Travis Core repository. It contains several sub-section/subdirectories:
addons
: Event handlers that take events such as "build finished" and sends out notifications to GitHub, Pusher, Campfire, etc.api
: Serializers for models and events used in our API and in some other places (for example to generate Pusher payloads).enqueue
: Logic for enqueueing jobs.event
: Code for sending and subscribing to events. Used by theaddons
code to subscribe to changes in the models.github
: Services for communicating with the GitHub API.mailer
: ActionMailer mailers.model
: All of our ActiveRecord models.notification
: Code for adding instrumentation.requests
: Handles requests received from GitHub.secure_config.rb
: Logic for encrypting and decrypting build/job configs.services
: Most of the business logic behind our API.testing
: Code used by our tests, such as model stubs and factories.