2016-05-24 09:35:55 +02:00
|
|
|
# GestioCOF
|
|
|
|
|
|
|
|
## Installation
|
|
|
|
|
2016-05-26 04:06:17 +02:00
|
|
|
### Vagrant
|
|
|
|
|
|
|
|
La façon recommandée d'installer GestioCOF sur votre machine est d'utiliser
|
|
|
|
[Vagrant](https://www.vagrantup.com/). Vagrant permet de créer une machine
|
|
|
|
virtuelle minimale sur laquelle tournera GestioCOF; ainsi on s'assure que tout
|
|
|
|
le monde à la même configuration de développement (même sous Windows !), et
|
|
|
|
l'installation se fait en une commande.
|
|
|
|
|
|
|
|
Pour utiliser Vagrant, il faut le
|
|
|
|
[télécharger](https://www.vagrantup.com/downloads.html) et l'installer.
|
|
|
|
|
|
|
|
Si vous êtes sous Linux, votre distribution propose probablement des paquets
|
|
|
|
Vagrant dans le gestionnaire de paquets (la version sera moins récente, ce qui
|
|
|
|
peut parfois poser des problèmes de compatibilité).
|
|
|
|
|
|
|
|
Vagrant permet d'utiliser différents types de machines virtuelles; par défaut
|
|
|
|
il utilise [Virtualbox](https://www.virtualbox.org/) qu'il vous faudra
|
|
|
|
également installer.
|
|
|
|
|
|
|
|
Une fois ces dépendances installées voici quelques commandes importants pour
|
|
|
|
gérer la machine virtuelle :
|
|
|
|
|
|
|
|
- `vagrant up` permet de lancer la machine virtuelle. Si une machine virtuelle
|
|
|
|
existe déjà, elle sera réutilisée; sinon, Vagrant va créer et configurer une
|
|
|
|
nouvelle machine virtuelle pour vous.
|
|
|
|
|
|
|
|
- `vagrant suspend` permet de sauver l'état de la machine virtuelle sur le
|
|
|
|
disque pour la relancer plus tard (y compris après un reboot) avec `vagrant
|
|
|
|
up`
|
|
|
|
|
|
|
|
- `vagrant halt` permet d'éteindre la machine virtuelle (par comparaison avec
|
|
|
|
`vagrant suspend`, cela prend moins de place sur le disque car il n'y a pas
|
|
|
|
besoin de sauver la RAM, mais la recréation avec `vagrant up` sera plus
|
|
|
|
lente)
|
|
|
|
|
|
|
|
- Enfin, `vagrant destroy` permet de détruire complétement la machine
|
|
|
|
virtuelle : lors du prochain appel de `vagrant up`, elle sera réinstallée de
|
|
|
|
zéro. *Attention, contrairement aux deux méthodes précédentes, `vagrant
|
|
|
|
destroy` détruira irrémédiablement le contenu de votre base de données
|
|
|
|
locale, si elle vous est d'un quelconque intérêt, réfléchissez à deux fois !*
|
|
|
|
|
|
|
|
- `vagrant ssh` vous connecte en SSH à la machine virtuelle, dans le dossier
|
|
|
|
où est installé GestioCOF. Vous pouvez utiliser les commandes Django
|
|
|
|
habituelles (`manage.py runserver` etc.); toutefois pour lancer le serveur il faut faire
|
|
|
|
|
|
|
|
python manage.py runserver 0.0.0.0:8000
|
|
|
|
|
|
|
|
car par défaut Django n'écoute que sur l'adresse locale de la machine
|
|
|
|
virtuelle - or vous voudrez accéder à GestioCOF depuis votre machine
|
|
|
|
physique.
|
|
|
|
|
|
|
|
**Le dossier avec le code de GestioCOF est partagé entre la machine virtuelle
|
|
|
|
et votre machine physique : vous pouvez donc utiliser votre éditeur favori pour
|
|
|
|
coder depuis l'extérieur de la machine virtuelle, et les changements seront
|
|
|
|
répercutés dans la machine virtuelle.**
|
|
|
|
|
|
|
|
### Installation manuelle
|
|
|
|
|
|
|
|
Si vous optez pour une installation manuelle plutôt que d'utiliser Vagrant, il
|
|
|
|
est fortement conseillé d'utiliser un environnement virtuel pour Python.
|
|
|
|
|
|
|
|
Il vous faudra installer mercurial, pip, les librairies de développement de
|
|
|
|
python, ainsi qu'un client et un serveur MySQL ; sous Debian et dérivées (Ubuntu, ...) :
|
|
|
|
|
|
|
|
sudo apt-get install mercurial python-pip python-dev libmysqlclient-dev mysql-server
|
|
|
|
|
|
|
|
Si vous décidez d'utiliser un environnement virtuel Python (virtualenv;
|
|
|
|
fortement conseillé), créez-le maintenant, puis installez les dépendances dans
|
|
|
|
le `requirements.txt` et `requirements-devel.txt` :
|
|
|
|
|
|
|
|
pip install -r requirements.txt -r requirements-devel.txt
|
|
|
|
|
|
|
|
Ensuite, il faut configurer MySQL ; créez une base de données `cof_gestion` et
|
|
|
|
un utilisateur local `cof_gestion` avec un mot de passe de votre choix.
|
|
|
|
Ensuite, copiez le fichier `cof/settings_dev.py` dans `cof/settings.py` et
|
|
|
|
changez la configuration de `DATABASES` en conséquent.
|
|
|
|
|
|
|
|
Finalement, il faut initialiser les modèles de Django :
|
|
|
|
|
|
|
|
python manage.py migrate
|
|
|
|
|
|
|
|
### Mise à jour
|
|
|
|
|
|
|
|
Pour mettre à jour les paquets Python, utiliser la commande suivante :
|
|
|
|
|
|
|
|
pip install --upgrade -r requirements.txt -r requirements-devel.txt
|
|
|
|
|
|
|
|
Pour mettre à jour les modèles après une migration, il faut ensuite faire :
|
|
|
|
|
|
|
|
python manage.py migrate
|