The COIN project
================

`Coin` is Illyse's Information System, designed to managed subscribers.

It is written in Django, and makes an heavy use of LDAP (for
authentication, and to store configuration information).

It currently only works with python2, because `python-ldap` is (as of
2013) not compatible with python3.


Quickstart
==========

Get yourself a virtualenv. On Debian, install `python-virtualenv`. On
Archlinux, the package is called `python2-virtualenv`, and you must
replace the `virtualenv` command with `virtualenv2` in the following.

To create the virtualenv (the first time):

  virtualenv ~/tmp/venv-illyse


To activate the virtualenv (you need to do this each time you work on
the project):

  . ~/tmp/venv-illyse/bin/activate


Install dependencies. On Debian, you will probably need the
`python-dev`, `python-pip`, `libldap-dev`, `libpq-dev` and `libsasl2-dev`
packages.

  sudo apt-get install python-dev python-pip libldap2-dev libpq-dev libsasl2-dev

Then run:

  pip install -r requirements.txt


You should now be able to run `python manage.py` (within the
virtualenv, obviously) without error.

The `coin/settings_local.py` file is ignore by Git: feel free to override any
setting by writing into that file. For example, to override the `DEBUG`
settings:

    echo '# -*- coding: utf-8 -*-' > coin/settings_local.py
    echo 'DEBUG = TEMPLATE_DEBUG = True' >> coin/settings_local.py


To sync database, the first time run :

  python manage.py syncdb --migrate

You probably want to import some base data to play with:

  python manage.py loaddata offers ip_pool

Then at each code update :

  python manage.py migrate


More information
================

For the rest of the setup (database, LDAP), see

  https://www.illyse.org/projects/ils-si/wiki/Mise_en_place_environnement_de_dev
