[Work In Progress] A simple continuous integration server written with Django.
Don't use it unless you're interested in contributing. In which case, see below.
- Support for major DVCSs
- Build axes ala Jenkins
- Branch support
- Xunit, Cobertura reports. Stats porn.
- Comprehensive, read-write, HTTP API
- Real-time endpoint. No plugins.
- Python
- Django
- SQL (Django ORM)
- Redis
- Celery
Add to your ~/.virtualenvs/postactivate
:
export GEM_HOME="$VIRTUAL_ENV/gems" export GEM_PATH="" export PATH=$PATH:$GEM_HOME/bin
Setup your environment:
git clone git://github.com/brutasse/ci.git cd ci # Python environment mkvirtualenv --no-site-packages --python python2 ci workon ci add2virtualenv . pip install -U pip pip install -r requirements.txt # Ruby tools -- foreman / compass gem install bundle bundle install # Create the development database make db
Get gorun.
Run all the things:
make run
This will run:
- Django's runserver
- The Celery worker(s)
- Compass for compiling the CSS
- Gorun for running the tests when code changes (linux-only, cross-platform and native alternatives are welcome)
To run the local test suite, do:
make tests
The local tests are only mostly local, you need an internet connection for all tests to pass.
To run the "live" tests (they make actual clones and builds from the internet):
make livetests