Merge branch 'Kerl/readme' into 'master'
Recommande l'installation manuelle dans le README See merge request cof-geek/gestioCOF!298
This commit is contained in:
commit
2818e43b2e
1 changed files with 84 additions and 51 deletions
135
README.md
135
README.md
|
@ -4,16 +4,72 @@
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
|
Il est possible d'installer GestioCOF sur votre machine de deux façons différentes :
|
||||||
|
|
||||||
|
- L'[installation manuelle](#installation-manuelle) (**recommandée** sous linux et OSX), plus légère
|
||||||
|
- L'[installation via vagrant](#vagrant) qui fonctionne aussi sous windows mais un peu plus lourde
|
||||||
|
|
||||||
|
### Installation manuelle
|
||||||
|
|
||||||
|
Il est fortement conseillé d'utiliser un environnement virtuel pour Python.
|
||||||
|
|
||||||
|
Il vous faudra installer pip, les librairies de développement de python ainsi
|
||||||
|
que sqlite3, un moteur de base de données léger et simple d'utilisation. Sous
|
||||||
|
Debian et dérivées (Ubuntu, ...) :
|
||||||
|
|
||||||
|
sudo apt-get install python3-pip python3-dev python3-venv sqlite3
|
||||||
|
|
||||||
|
Si vous décidez d'utiliser un environnement virtuel Python (virtualenv;
|
||||||
|
fortement conseillé), déplacez-vous dans le dossier où est installé GestioCOF
|
||||||
|
(le dossier où se trouve ce README), et créez-le maintenant :
|
||||||
|
|
||||||
|
python3 -m venv venv
|
||||||
|
|
||||||
|
Pour l'activer, il faut taper
|
||||||
|
|
||||||
|
. venv/bin/activate
|
||||||
|
|
||||||
|
depuis le même dossier.
|
||||||
|
|
||||||
|
Vous pouvez maintenant installer les dépendances Python depuis le fichier
|
||||||
|
`requirements-devel.txt` :
|
||||||
|
|
||||||
|
pip install -U pip # parfois nécessaire la première fois
|
||||||
|
pip install -r requirements-devel.txt
|
||||||
|
|
||||||
|
Pour terminer, copier le fichier `cof/settings/secret_example.py` vers
|
||||||
|
`cof/settings/secret.py`. Sous Linux ou Mac, préférez plutôt un lien symbolique
|
||||||
|
pour profiter de façon transparente des mises à jour du fichier:
|
||||||
|
|
||||||
|
ln -s secret_example.py cof/settings/secret.py
|
||||||
|
|
||||||
|
|
||||||
|
#### Fin d'installation
|
||||||
|
|
||||||
|
Il ne vous reste plus qu'à initialiser les modèles de Django et peupler la base
|
||||||
|
de donnée avec les données nécessaires au bon fonctionnement de GestioCOF + des
|
||||||
|
données bidons bien pratiques pour développer avec la commande suivante :
|
||||||
|
|
||||||
|
bash provisioning/prepare_django.sh
|
||||||
|
|
||||||
|
Voir le paragraphe ["outils pour développer"](#outils-pour-d-velopper) plus bas
|
||||||
|
pour plus de détails.
|
||||||
|
|
||||||
|
Vous êtes prêts à développer ! Lancer GestioCOF en faisant
|
||||||
|
|
||||||
|
python manage.py runserver
|
||||||
|
|
||||||
|
|
||||||
### Vagrant
|
### Vagrant
|
||||||
|
|
||||||
La façon recommandée d'installer GestioCOF sur votre machine est d'utiliser
|
Une autre façon d'installer GestioCOF sur votre machine est d'utiliser
|
||||||
[Vagrant](https://www.vagrantup.com/). Vagrant permet de créer une machine
|
[Vagrant](https://www.vagrantup.com/). Vagrant permet de créer une machine
|
||||||
virtuelle minimale sur laquelle tournera GestioCOF; ainsi on s'assure que tout
|
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
|
le monde à la même configuration de développement (même sous Windows !), et
|
||||||
l'installation se fait en une commande.
|
l'installation se fait en une commande.
|
||||||
|
|
||||||
Pour utiliser Vagrant, il faut le
|
Pour utiliser Vagrant, il faut le
|
||||||
[télécharger](https://www.vagrantup.com/downloads.html) et l'installer.
|
[télécharger](https://www.vagrantup.com/downloads.html) et l'installer.
|
||||||
|
|
||||||
Si vous êtes sous Linux, votre distribution propose probablement des paquets
|
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
|
Vagrant dans le gestionnaire de paquets (la version sera moins récente, ce qui
|
||||||
|
@ -83,55 +139,6 @@ Ce serveur se lance tout seul et est accessible en dehors de la VM à l'url
|
||||||
code change, il faut relancer le worker avec `sudo systemctl restart
|
code change, il faut relancer le worker avec `sudo systemctl restart
|
||||||
worker.service` pour visualiser la dernière version du code.
|
worker.service` pour visualiser la dernière version du code.
|
||||||
|
|
||||||
|
|
||||||
### Installation manuelle
|
|
||||||
|
|
||||||
Vous pouvez opter 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 pip, les librairies de développement de python ainsi
|
|
||||||
que sqlite3, un moteur de base de données léger et simple d'utilisation. Sous
|
|
||||||
Debian et dérivées (Ubuntu, ...) :
|
|
||||||
|
|
||||||
sudo apt-get install python3-pip python3-dev sqlite3
|
|
||||||
|
|
||||||
Si vous décidez d'utiliser un environnement virtuel Python (virtualenv;
|
|
||||||
fortement conseillé), déplacez-vous dans le dossier où est installé GestioCOF
|
|
||||||
(le dossier où se trouve ce README), et créez-le maintenant :
|
|
||||||
|
|
||||||
python3 -m venv venv
|
|
||||||
|
|
||||||
Pour l'activer, il faut faire
|
|
||||||
|
|
||||||
. venv/bin/activate
|
|
||||||
|
|
||||||
dans le même dossier.
|
|
||||||
|
|
||||||
Vous pouvez maintenant installer les dépendances Python depuis le fichier
|
|
||||||
`requirements-devel.txt` :
|
|
||||||
|
|
||||||
pip install -U pip
|
|
||||||
pip install -r requirements-devel.txt
|
|
||||||
|
|
||||||
Pour terminer, copier le fichier `cof/settings/secret_example.py` vers
|
|
||||||
`cof/settings/secret.py`. Sous Linux ou Mac, préférez plutôt un lien symbolique
|
|
||||||
pour profiter de façon transparente des mises à jour du fichier:
|
|
||||||
|
|
||||||
ln -s secret_example.py cof/settings/secret.py
|
|
||||||
|
|
||||||
|
|
||||||
#### Fin d'installation
|
|
||||||
|
|
||||||
Il ne vous reste plus qu'à initialiser les modèles de Django et peupler la base
|
|
||||||
de donnée avec les données nécessaires au bon fonctionnement de GestioCOF + des
|
|
||||||
données bidons bien pratiques pour développer avec la commande suivante :
|
|
||||||
|
|
||||||
bash provisioning/prepare_django.sh
|
|
||||||
|
|
||||||
Vous êtes prêts à développer ! Lancer GestioCOF en faisant
|
|
||||||
|
|
||||||
python manage.py runserver
|
|
||||||
|
|
||||||
### Mise à jour
|
### Mise à jour
|
||||||
|
|
||||||
Pour mettre à jour les paquets Python, utiliser la commande suivante :
|
Pour mettre à jour les paquets Python, utiliser la commande suivante :
|
||||||
|
@ -143,6 +150,32 @@ Pour mettre à jour les modèles après une migration, il faut ensuite faire :
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
|
|
||||||
|
|
||||||
|
## Outils pour développer
|
||||||
|
|
||||||
|
### Base de donnée
|
||||||
|
|
||||||
|
Quelle que soit la méthode d'installation choisie, la base de donnée locale est
|
||||||
|
peuplée avec des données artificielles pour faciliter le développement.
|
||||||
|
|
||||||
|
- Un compte `root` (mot de passe `root`) avec tous les accès est créé. Connectez
|
||||||
|
vous sur ce compte pour accéder à tout GestioCOF.
|
||||||
|
- Des comptes utilisateurs COF et non-COF sont créés ainsi que quelques
|
||||||
|
spectacles BdA et deux tirages au sort pour jouer avec les fonctionnalités du BdA.
|
||||||
|
- À chaque compte est associé un trigramme K-Fêt
|
||||||
|
- Un certain nombre d'articles K-Fêt sont renseignés.
|
||||||
|
|
||||||
|
### Tests unitaires
|
||||||
|
|
||||||
|
On écrit désormais des tests unitaires qui sont lancés automatiquement sur gitlab
|
||||||
|
à chaque push. Il est conseillé de lancer les tests sur sa machine avant de proposer un patch pour s'assurer qu'on ne casse pas une fonctionnalité existante.
|
||||||
|
|
||||||
|
Pour lancer les tests :
|
||||||
|
|
||||||
|
```
|
||||||
|
python manage.py test
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## Documentation utilisateur
|
## Documentation utilisateur
|
||||||
|
|
||||||
Une brève documentation utilisateur est accessible sur le
|
Une brève documentation utilisateur est accessible sur le
|
||||||
|
|
Loading…
Reference in a new issue