diff --git a/README.md b/README.md index c48f5957..5966e5f1 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,9 @@ 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. + nouvelle machine virtuelle pour vous (la première fois que vous lancez cette + commande, Vagrant va télécharger une image d'Ubuntu; il vaut mieux avoir une + connection Internet pas trop mauvaise). - `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 @@ -66,23 +68,91 @@ 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 + sudo apt-get install mercurial python-pip python-dev libmysqlclient-dev 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` : +fortement conseillé), déplacez-vous dans le dossier où est installé GestioCOF +(le dossier où se trouve ce README), et créez-le maintenant : + + virtualenv env + +Pour l'activer, il faut faire + + . env/bin/activate + +dans le même dossier. + +Vous pouvez maintenant installer les dépendances Python depuis les fichiers +`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. +Enfin, copiez le fichier `cof/settings_dev.py` dans `cof/settings.py`. -Finalement, il faut initialiser les modèles de Django : +#### Installation avec MySQL + +Il faut maintenant installer MySQL. Si vous n'avez pas déjà MySQL installé sur +votre serveur, il faut l'installer ; sous Debian et dérivées (Ubuntu, ...) : + + sudo apt-get install mysql-server + +Il vous demandera un mot de passe pour le compte d'administration MySQL, +notez-le quelque part (ou n'en mettez pas, le serveur n'est accessible que +localement par défaut). Si vous utilisez une autre distribution, consultez la +documentation de votre distribution pour savoir comment changer ce mot de passe +et démarrer le serveur MySQL (c'est automatique sous Ubuntu). + +Vous devez alors créer un utilisateur local et une base `cof_gestion`, avec le +mot de passe de votre choix (remplacez `mot_de_passe`) : + + mysql -uroot -e "CREATE DATABASE cof_gestion; GRANT ALL PRIVILEGES ON cof_gestion.* TO 'cof_gestion'@'localhost' IDENTIFIER BY 'mot_de_passe'" + +Éditez maintenant le fichier `cof/settings.py` pour y intégrer ces changements ; +la définition de `DATABASES` doit ressembler à (à nouveau, remplacez +`mot_de_passe` de façon appropriée) : + + DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.mysql', + 'NAME': 'cof_gestion', + 'USER': 'cof_gestion', + 'PASSWORD': 'mot_de_passe', + } + } + +#### Installation avec SQLite + +GestioCOF est installé avec MySQL sur la VM COF, et afin d'avoir un +environnement de développement aussi proche que possible de ce qui tourne en +vrai pour éviter les mauvaises surprises, il est conseillé d'utiliser MySQL sur +votre machine de développement également. Toutefois, GestioCOF devrait +fonctionner avec d'autres moteurs SQL, et certains préfèrent utiliser SQLite +pour sa légèreté et facilité d'installation. + +Si vous décidez d'utiliser SQLite, il faut l'installer ; sous Debian et dérivées : + + sudo apt-get install sqlite3 + +puis éditer le fichier `cof/settings.py` pour que la définition de `DATABASES` +ressemble à : + + DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + } + } + +#### Fin d'installation + +Il ne vous reste plus qu'à initialiser les modèles de Django avec la commande suivante : python manage.py migrate +et vous êtes prêts à développer ! Lancer GestioCOF en faisant + + python manage.py runserver + ### Mise à jour Pour mettre à jour les paquets Python, utiliser la commande suivante :