Outils pour utilisateurs

Outils du site


public:specs_setups

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
public:specs_setups [2017/09/20 14:09]
slh@ens-lyon.fr
public:specs_setups [2019/04/10 14:18] (Version actuelle)
slh@ens-lyon.fr
Ligne 1: Ligne 1:
-====== Spécification ​de l'​installation ​de TXM ======+====== Spécification ​des installeurs ​de TXM ======
  
 ===== Objectif ===== ===== Objectif =====
Ligne 5: Ligne 5:
 Pour chaque OS supporté, un installeur doit prendre en charge l'​installation de TXM et de tous ses composants (CQP, R, Java, etc.) Pour chaque OS supporté, un installeur doit prendre en charge l'​installation de TXM et de tous ses composants (CQP, R, Java, etc.)
  
-==== Pour tout OS ====+==== Architecture de déploiement ​====
  
 Le top est de profiter des systèmes de dépendances des OS pour installer les composants de TXM (ex: packages Debian) : Le top est de profiter des systèmes de dépendances des OS pour installer les composants de TXM (ex: packages Debian) :
Ligne 37: Ligne 37:
     * Mac : /​Users/​xxxx/​TXM     * Mac : /​Users/​xxxx/​TXM
  
 +==== Compatibilité avec les contrôles de sécurité ====
  
 +Lors de son déploiement,​ TXM peut nécessiter le réglage de systèmes de sécurité :
 +  * sous Windows :
 +    * l'​installeur peut ne pas passer les tests de certains antivirus
 +    * le premier lancement de TXM peut nécessiter l'​acceptation de certaines ouvertures de droits de communication entre applications
 +  * sous Mac :
 +    * il peut être nécessaire d'​autoriser l'​installation de logiciel ne venant pas de l'​AppleStore
 +  * sous Linux :
 +    * l'​architecture de déploiement nécessite une reconnexion à la première installation,​ après la mise en place de l'​architecture logicielle utilisant certains droits d'​accès spécifiques
  
 ===== Solution ===== ===== Solution =====
Ligne 256: Ligne 265:
  
   * les droits nécessaires à l'​installation de mise à jour TXM : sous Linux surtout le fait de devoir se reloguer n'est pas évident   * les droits nécessaires à l'​installation de mise à jour TXM : sous Linux surtout le fait de devoir se reloguer n'est pas évident
-  * les scripts Groovy ne sont pas livrés et sont empaqueté ​dans le jar de la Toolbox. Il n'y a pas de politique d'​utilisation des scripts de TXM (scripts de la Toolbox VS scripts de l'​utilisateur)+  * les scripts Groovy ne sont pas livrés et sont empaquetés ​dans le jar de la Toolbox. Il n'y a pas de politique d'​utilisation des scripts de TXM (scripts de la Toolbox VS scripts de l'​utilisateur)
   * ...   * ...
 +
 +==== TXM 0.8 ====
 +
 +La création de setup devrait être simplifiée par l'​introduction des plugins CQP, R et du déplacement de la copie des fichier utilisateur (Groovy, CSS, XSL, etc.)
 +
 +**installation**
 +
 +TXM 0.8 doit permettre d'​être installer à coté des autres TXM et ainsi permettre de :
 +  * beta testé TXM
 +  * avoir plusieurs TXM le temps de faire transition
 +
 +On garde les technologies de TXM 0.7.9, la solution dépendra beaucoup du système d'​exploitation : 
 +  * Debian :
 +    * le package contient la version de TXM -> TXM 0.8.1 est installé à coté de TXM 0.8.0
 +      * le package supprime donc seulement les éventuels TXM avec la même version
 +    * les fichiers sont patchés par le script BuildLinux64.sh : la version est ajouté par plusieurs cherchés/​remplacés
 +  * Windows :
 +    * WIP
 +  * Mac OS X :
 +    * WIP
 +
 +**mise à jour**
 +
 +comment prévenir les utilisateurs :
 +  * qu'une mise à jour de type setup est disponible
 +  * qu'une version de TXM n'est plus maintenue
 +
 +**fichiers**
 +
 +TXM 0.8 change la donne sur la structure du répertoire d'​installation :
 +  * les binaires de CQP sont packetés dans un plugin
 +  * les binaires de R sont packetés dans un plugin
 +  * les préférences par défaut sont mieux gérées
 +
 +
 +Une grande partie des fichiers du répertoire d'​installation (Linux) peuvent aussi être packetés : 
 +  * **css** -> déjà dans la TBX
 +  * **doc** -> déjà dans SVN mais pas dans la TBX, pourrait être inclu à un plugin org.txm.help (qui fait de l'aide contextuel entre plus d'​ajouter les menus d'aide and co.)
 +  * **schema** -> déjà dans la TBX
 +  * **xsl** -> déjà dans la TBX
 +  * **samples** -> pourrait être déplacé dans un plugin org.txm.corpussamples
 +  * <​del>​TXM</​del>​ -> peut devenir la racine du répertoire d'​installation
 +  * <​del>​R</​del>​ -> n'a plus d'​utilité
 +  * <​del>​cwb</​del>​ -> n'a plus d'​utilité
 +  * <​del>​install.prefs</​del>​ -> n'a plus d'​utilité,​ sauf peut-être pour le pré-réglage pour les installations en salles de cours ?
 +  * <​del>​license_agreement.txt</​del>​ -> n'a plus d'​utilité depuis la fenêtre de validation d'​utilisation
 +  * <​del>​license_agreement_fr.txt</​del>​ -> n'a plus d'​utilité depuis la fenêtre de validation d'​utilisation
 +  * //​LICENSE.TXT//​ -> licence GNU EN, obligatoire
 +  * //​LICENSE_FR.TXT//​ -> licence GNU FR, obligatoire
 +  * scripts -> ?
 +  * TestPreInstall.jar -> n'est plus utilisé
 +  * TXM.png -> n'est plus utilisé
 +  * install.bash -> n'a plus d'​utilité ? sauf peut-être pour une installation archive
 +  * STAMP
 +
 +**gestion des fichiers partagés des setups**
 +
 +Les fichiers partagés sont copiés alors de la création du répertoire utilisateur. Ils habitent principalement dans les plugins ou le SVN de TXM :
 +  * scripts Groovy d'​exemple (pas tous) : org.txm.core -> org.txm.groovy.core
 +  * macros Groovy : org.txm.core -> org.txm.groovy.core
 +  * scripts de lancement des modules d'​import (pas tous) : org.txm.core -> org.txm.groovy.core
 +  * scripts R d'​exemple : org.txm.core->​ org.txm.statengine.r.core
 +  * feuilles XSL : org.txm.core
 +  * css : org.txm.core ->  org.txm.groovy.core?​
 +  * manuel TXM : SVN/projet doc
 +  * corpus d'​exemple : SVN/corpora
 +  ​
 +Méthode
 +  - Déplacer le code de copie des fichiers partagés vers la classe Workspace ​
 +  - Déplacer tout le code de création du txmhomedir, et des sous-répertoires "css, corpora, etc" qui est dans org.txm.rcp.ApplicationWorkbenchAdvisor.checkTXMHOME() vers la classe Workspace (niveau TBX donc)
 +    * le répertoire utilisateur de TXM porte alors le nom "​TXM_VERSION"​ (ex: TXM_0.8.0)
 +    * le répertoire utilisateur est créé si absent
 +    * le répertoire est mis à jour dans le cas où la version d'​installation du répertoire est inférieure à la version courante de TXM
 +  - On implémente les points d'​extension de création du workspace dans chaque plugin concerné par les fichiers partagés :
 +    * org.txm.groovy.core (scripts groovy et imports)
 +    * org.txm.statengine.r.core (scripts R)
 +    * org.txm.core (xsl, css et schema)
 +  - On laisse le manuel et les corpus d'​exemple dans le répertoire d'​installation PAR CONTRE, les corpus ne sont plus copiés dans le répertoire utilisateur
 +  - On implémente une commande pour récupérer des corpus binaire d'un autre répertoire utilisateur TXM
 +
 +
 +==== plus tard ====
 +
 +=== Solution installeur universel ===
 +
 +Permet de s'​affranchir d'une partie des contraintes des installeurs +/- officiels des OS :
 +  * Debian : peu d'​interaction avec l'​utilisateur
 +  * Windows : NSIS 
 +  * Mac OS X: interactions stéréotypées
 +
 +Permet aussi de limiter le nombre de technologies d'​installeur
 +
 +(si basé sur Java, il faut que Java soit embeddé)
 +
 +Scénario :
 +  * télécharger l'​installeur de TXM 0.8
 +  * installer TXM 0.8
 +    * à la question "​Souhaitez vous remplacer le TXM déjà installé sur cette machine ?" répondre par '​Non'​ (parmi un choix [Oui (par défaut), Non, Abandonner) ou check + cliquer sur Continuer
 +    * à la question "​Souhaitez vous récupérer les corpus du TXM déjà installé sur cette machine ?" répondre par '​Oui'​ (parmi un choix [Oui (par défaut), Non, Abandonner) ou uncheck + cliquer sur Continuer
 +  * lancer TXM 0.8
 +  * vérifier son fonctionnement
 +  * lancer le TXM précédemment installé
 +  * vérifier son fonctionnement
 +
 +=== Solution archive ===
 +
 +  * Télécharger l'​archive de TXM 0.8 pour Windows ou Ubuntu
 +  * des-archiver TXM 0.8
 +  * lancer TXM 0.8
 +  * au premier lancement sélectionner l'​espace de travail à utiliser
 +  * constater qu'un nouveau espace de travail est créé
  
 ===== Recette ===== ===== Recette =====
public/specs_setups.1505909349.txt.gz · Dernière modification: 2017/09/20 14:09 par slh@ens-lyon.fr