Cinch is a continuous integration tool designed to report the releasable status of individual branches (pull requests) on public or private GitHub projects.
- Note:
- This project is very much a work in progress while we develop our release process towards Continuous Integration and Delivery.
Cinch is built to support configuring different success criteria for different projects from a number of different sources (eg. GitHub, Jenkins, and Travis with a modular pattern to support extending to include new or custom tools).
Cinch is a Flask web application. To install it's dependencies, run the following from within a new virutalenv:
$ pip install -r requirements.txt
There's an example set of environment variables that will need to be configured in order for cinch to run. To get up and running you can copy this file and fill in the details for your local environment.
From within the cinch project directory:
$ cp setup_env.sample.sh setup_env.sh $ vim setup_env.sh # Fill in each setting according to the instructions $ source setup_env.sh
- Note:
- Any environment variables prefixed with
CINCH_
will have the prefix stripped and will be added to the app configuration for access by plugins.
Then to run the application:
$ python runserver.py * Running on http://0.0.0.0:5000/ * Restarting with reloader
The cinch dashboard will then be accessible on http://localhost:5000/ which shows the currently active Pull Requests for configured projects.
Projects and Jobs can be configured through the admin interface at http://localhost:5000/admin/
Apache 2.0. See LICENSE for details.