Commit b7958b97637fe8ba20f690166aa5de83992fa5ef

Authored by hitier
1 parent 9c7c1dfa

More install doc

Showing 1 changed file with 44 additions and 16 deletions   Show diff stats
INSTALL.md
... ... @@ -23,46 +23,73 @@
23 23  
24 24 ### Configurer l'application
25 25  
  26 +Les fichiers de configuration fournis dans le répertoire ./resources sont à copier à la racine du projet,
  27 +mais peuvent être laissés tels quels pour un premier test aprés installation.
  28 +
  29 +Il est bon d'y jeter un oeil, les commentaires sont là pour aider.
  30 +
26 31 # D'abord les accès base de donnée
27   - cp resources/pdc_config.py .
28   - $(EDITOR) pdc_config.py
  32 + #
29 33 cp resources/db_config.py .
30 34 $(EDITOR) db_config.py
31 35  
32   - # Ensuite l'application elle même (ce fichier est utilisable tel quel)
33   - cp resources/flaskenv .flaskenv
  36 + # Puis le fichier pour l'application elle même
  37 + #
  38 + cp resources/pdc_config.py .
  39 + $(EDITOR) pdc_config.py
  40 +
  41 + # Enfin le contrôle de la commande flask
  42 + # également chargé par l'application grace à l'instruction:
  43 + # app/__init__.py: load_dotenv(env_file, verbose=True)
  44 + #
  45 + cp resources/flaskenv .flaskenv # ! noter le '.' devant le fichier destination
34 46 $(EDITOR) .flaskenv
35 47  
36 48 ### Créer la base de données
37 49  
38   -Utiliser l'outil de ligne de commande fourni avec l'application.
  50 +Dans un premier temps pour tester l'installation, on peut s'appuyer sur une base déjà disponible.
39 51  
40   - flask pdc_db --help
  52 +Il s'agit de l'import d'une base de type Lesia dont les noms d'agents, de projets, de métiers et de services ont été
  53 +réécrit avec des chantiers du batiment. Cela afin de ne pas diffuser des données réelles du Lesia et permettre la
  54 +diffusion de ces données de test avec le projet plan-de-charge.
  55 +
  56 + cp resources/lesia-btp.sqlite ./pdc-dev.db
  57 +
  58 +Vérifier que ce chemin correspond avec celui configuré dans le fichier `db_config.py`
41 59  
42   - # créer la structure de la base
  60 +Pour un usage plus avancé, il y a l'outil de ligne de commande fourni avec l'application.
  61 +
  62 + # Créer la structure de la base
  63 + #
43 64 flask pdc_db create_db
44 65  
45   - # renseigner des agent depuis une base type lesia
  66 + # Il est aussi possible d'importer une base de type Lesia
  67 + # cela suppose de disposer d'une telle base, et de l'avoir configurée dans db_config.py
  68 + #
46 69 flask pdc_db feed_from_lesia
47 70  
48   - # entrer des périodes
49   - # ( inutile s'il y a eu un import Lesia)
50   - flask pdc_db feed_periods
  71 + # Voire de l'anonymiser:
  72 + #
  73 + flask pdc_db fake_lesia_names
51 74  
52   - # entrer des charges aléatoires (une centaine)
53   - # ( inutile s'il y a eu un import Lesia)
54   - flask pdc_db feed_random_charges
  75 + # Plus d'info sur les outils en ligne de commande:
  76 + #
  77 + flask --help
  78 + flask pdc_db --help
55 79  
56 80  
57 81 ## Jouer les tests et exécuter un serveur local
58 82  
59 83 pip install -r requirements-tests.txt
  84 + cp resources/lesia-btp.sqlite ./pdc-test.db # ou le chemin configuré dans `db_config.py`
60 85 PYTHONPATH=. pytest
61 86  
62 87 # éventuellement voir le taux de couverture
  88 + #
63 89 PYTHONPATH=. pytest --cov=app --cov-report=xml:"coverage.xml" --cov-report=term --junitxml "tests-report.xml"
64 90  
65   - # ouvrir un serveur sur localhost:5000
  91 +Enfin, ouvrir un serveur sur localhost:5000 et y accéder avec son navigateur.
  92 +
66 93 flask run
67 94  
68 95 ## Configurer l'appli web avec apache
... ... @@ -70,6 +97,7 @@ Utiliser l'outil de ligne de commande fourni avec l'application.
70 97 ### Les fichiers concernés:
71 98  
72 99 - pdc_web.wsgi
  100 +- pdc_web.py
73 101 - pdc_config.py
74 102 - db_config.py
75 103  
... ... @@ -143,4 +171,4 @@ Normalement, cette configuration permet de lire les variables positionées dans
143 171 FLASK_APP=pdc_web
144 172  
145 173  
146   -Ainsi fait, exécutez votre projet depuis pycharm et testez.
  174 +Ainsi fait, exécutez votre projet depuis pycharm et essayez sur un navigateur à l'adresse localhost:5000.
... ...