Retour : page principale > sommaire eFlore v5

Besoins et solutions techniques d'eFlore v5


Logiciels
  • Php 5.2
  • Mysql v5
  • TBFramework
  • SVN
  •  WebSVN

Dépôt SVN
Création d'un nouveau dépôt
Création de chaque projet sur le dépôt SVN de Tela Botanica (eFlore est un projet propre à la structure et peu réutilisable à l'extérieur).
Les données brutes (excell, access, filemaker, ...) de chaque projet seront stockées sur tela-botanica.org/eflore/donnees/. L'arborescence de ce dépôt sera la suivante : /eflore > /donnees > /CodeProjet1 > Données brutes sous forme de fichiers
La doc du format des données d'origine sera renseignée sur le wikini d'eFlore (l'indiquer dans un fichier A_LIRE.txt sur le dépôt SVN).
La doc sur le format des services web sera renseignée sur le wikini d'eFlore (l'indiquer dans un fichier A_LIRE.txt sur le dépôt SVN).
Les métadonnées de chaque projet devront être stockées soient dans les tables en base de données du projet, soit dans un fichier texte accessible par les services web.
Arborescences du dépôt SVN eflore :
  • projets
    • CodeProjet1
      • branches
      • tags
      • trunk
        • doc
          • bdd : dossier contenant les fichiers MysqlWorkbench
          • A_LIRE.txt
        • scripts
          • donnees : dossier qui doit contenir les données brutes pour les scripts. Toutefois, elles ne doivent pas être commités dans le dépôt SVN. Elles seront stockées sur le serveur de Tela dans tela-botanica.org/eflore/donnees/. L'accès à ce dossier sera bloqué par un robot.txt et un .htaccess.
          • bibliotheque
          • configurations
          • modules : des script de vérification des données et d'intégration dans MySQL
          • tests : tests unitaires des scripts
        • services
          • configurations : peut contenir un fichier .ini avec les métadonnées du projet
          • modules : des services web REST
          • tests : tests unitaires des services web REST
          • index, framework, htaccess
  • applications
    • consultation : moteur, fiche ...
      • branches
      • tags
      • trunk
    • chorologie
      • branches
      • tags
      • trunk

Base de données
La base de données sera située sur le serveur Sequoia de Tela Botanica.
Elle aura pour nom : tb_eflore. Une deuxième base de données pour réaliser des tests sera éventuellement créée avec le nom : tb_eflore_test.
Les tables de chaque projet devront être préfixées par le code du projet s'il existe plusieurs tables. S'il n'y a qu'une seule table, son nom correspondra au code du projet. Ex. : chorodep, codeprojet1_ma_table_1
Pour chaque projet il faudra créer une tables des méta-données.
La documentation du format des tables devra être réalisée dans MysqlWorkbench. Le fichier en question sera commité dans le dépôt SVN et servira à générer la structure des tables pour la base tb_eflore.
Les tables devront avoir un format le plus proche des données d'origine. Il est important d'avoir le moins de manipulation possible pour l'intégration. L'idéal étant d'intégrer les données via une requête SQL "LOAD DATA".

Serveur
Le serveur Sequoia hébergera les données des projets, la base de données, et les services web.
L'ensemble sera sur le domaine www.tela-botanica.org.
Deux dossiers sont disponibles à la racine du domaine :
  • eflore : pour les interfaces et les services en productions
  • eflore-test : pour réaliser les tests
Ces deux dossiers auront une arborescence pratiquement similaire :
  • archives : contient des dossiers et fichiers correspondant à d'anciennes applications, projets, etc obsolètes.
  • donnees : uniquement dans le dossier eflore (contient les données brutes des projets) accessibles seulement par FTP (sauf exception).
    • robot.txt : bloquant l'accès web.
    • .htaccess : bloquant l'accès web.
    • CodeProjet1 : contient les fichiers des données brutes du projet 1.
    • CodeProjet2 : contient les fichiers des données brutes du projet 2...
  • cel2 : interface d'administration du CEL
  • coel : interface d'administration de COEL.
  • consultation : interface de consultation d'eFlore.
    • actuelle : code de la version la plus à jour d'eFlore + plus les éventuelles corrections de bogue présentes dans le trunk. Ex. : ici, v2.0-Tadon + correction du trunck.
    • v1.0-Moquin : code de la version v1.0.
    • v2.0-Tandon : code de la version v2.0...
  • chorologie : interface de consultation des données choeFlore.
    • actuelle : version en cours d'utilisation.
    • v1.0-MonCode : version 0.1...
  • ... : autres applications faisant partie de l'écosystème eFlore.
  • scripts : contient un dossier par projet, uniquement les scripts devant être executé sur le serveur.
    • geo-inv-osm
      • actuel/
        • configurations/
        • modules/
          • mon_script/ : contient un script du projet geo-inv-osm
            • MonScript.php : un script.
        • framework.defaut.php
        • cli.php
  • services : contient un dossier par projet pour ces services web propres.
    • CodeProjet1
      • configurations/
      • modules/
        • 0.1/ : contient les services web de la version 0.1 de l'API du projet CodeProjet1
        • MonServiceWeb.php : un service web.
      • .htaccess
      • framework.defaut.php
      • index.php

Permaliens
Afin de rester indépendant de l'emplacement sur le serveur, une réécriture d'url sera mise en place pour accéder aux appli, services et widgets.
http://www.tela-botanica.org/[appli|service|widget]:[code_appli_ou_projet]:[nom_appli_ou_service_ou_widget]