patdie421 / mea-edomus

Automatically exported from code.google.com/p/mea-edomus
0 stars 0 forks source link

MEA-EDOMUS : initialisation des bases et fichiers de paramétrages (option -i) #59

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Intégrer à l'application l'initialisation de la base de paramétrage avec les 
données nécessaires et suffisantes pour lancer l'application :
- params.db
- chemin pour php
- chemin de l'ihm (index.html).

Original issue reported on code.google.com by patrice....@gmail.com on 19 Aug 2013 at 10:20

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Que doit vraiment faire l'option d'initialisation :
- 2 types d'initialisation :
   * -i : initialisation interactive (poser les questions nécessaires et suffisantes et warning en cas de problème potentiel).
   * -I : initialisation automatique à partir d'une option "rootpath" ou d'une découverte automatique

Pour les deux cas, les actions à réaliser :
- creation de la base de parametrage
- initialisation de la base de parametrage avec les données par defaut :
   * les types standard
   * localisation par defaut
   * parametres de l'applications

Les données nécessaires pour le fonctionnement minimum sont :

- mea_path : chemin de l'installation du mea-edomus (rootpath) / à récupérer 
dans -p si préciser (à rajouter) pour -I.
- phpcgi_path : le php-cgi à utiliser
- phpini_path : le php.ini à utiliser (peut être construit si nécessaire)
- gui_path : le chemin vers les "pages" de configuration

Les info sur les DB (mysql et queries.db) ne sont pas obligatoires pour 
l'initialisation (point à traiter lors de la réécriture de la gestion des 
données).

Original comment by patrice....@gmail.com on 28 Oct 2013 at 11:59

GoogleCodeExporter commented 9 years ago
remplacer les sprintf pas snprintf pour éviter les débordements de mémoire 
(voir en particulier les chaines "sql" construites.

Original comment by patrice....@gmail.com on 28 Oct 2013 at 12:01

GoogleCodeExporter commented 9 years ago
Réalisé pour l'instant :
- option -i complétée et et -I ajoutées
- option -p (rootpath) ajoutées
- ajout de LOGPATH dans la config (à rajouter aussi dans l'IHM)
- création des répertoires si nécessaire/demandé OK
- ajout d'une exception (/etc au lieu de /usr/etc et /var au lieu de /usr/var) 
pour un rootpath = /usr
- les sprintf ont été remplacés par snprintf
- déplacement de fonction dans sqlite3db.c

A faire :
- ajouter les options de création du logging en DB (serveur, db, user, pass et 
port)
- création de queries.db
- revue de code et optiomisation

Original comment by patrice....@gmail.com on 29 Oct 2013 at 7:34

GoogleCodeExporter commented 9 years ago
Liste definitive des options à programmer (intègre aussi les futurs 
selecteurs pour getopt_long :

Lancement de l'application
--basepath (-p) : chemin de l'installation
--paramsdb (-d) : chemin et nom la base de paramétrage
--config   (-c) : fichier de configuration (mea-edomus.ini qui contient 
basepath et paramsdb). Ligne de commande prioritaire sur le fichier de config.

--init     (-i) : initialisation interactive
--autoinit (-a) : intialisation automatique
--update   (-u) : modification d'un ou plusieurs parametre de la base

remarque : --init, --autoinit et --update sont incompatibles

Parametres pour --init, --autoinit ou --update uniquement :
--phpcgipath,-C   (defaut : basepath/bin)
--phpinipath,-H   (defaut : basepath/etc ou /etc si basepath=/usr)
--guipath,-G      (defaut : basepath/lib/mea-gui)
--logpath,-L      (defaut : basepath/var/log ou /var/log si basepath=/usr)
--pluginspath,-A  (defaut : basepath/lib/mea-plugins)
--bufferdbpath,-B (defaut : basepath/var/db ou /var/db si basepath=/usr)
--bufferdbname,-F (defaut : queries.db)
--dbserver,-D     (defaut : 127.0.0.1)
--dbport,-P       (defaut : 3306)
--dbname,-N       (defaut : meaedomusdb)
--dbuser,-U       (defaut : meaedomus)
--dbpassword,-W   (defaut : meaedomus)
--vendorid,-V     (defaut : mea)
--deviceid,-E     (defaut : edomus)
--instanceid,-S   (defaut : home)

Original comment by patrice....@gmail.com on 29 Oct 2013 at 12:27

GoogleCodeExporter commented 9 years ago

Original comment by patrice....@gmail.com on 30 Oct 2013 at 9:09