Projet

Général

Profil

EnvoleMigration23 » Historique » Version 13

Gaston TJEBBES, 28/07/2010 17:32

1 1 Gaston TJEBBES
h1. Migration vers la Eole2.3
2 1 Gaston TJEBBES
3 10 Gaston TJEBBES
{{toc}}
4 10 Gaston TJEBBES
5 9 Gaston TJEBBES
Les étapes :
6 9 Gaston TJEBBES
* Mettre les dictionnaires à jour;
7 9 Gaston TJEBBES
* Renommer éventuellement les variables pour revenir à quelque chose de standardisé;
8 9 Gaston TJEBBES
* Séparer les paquets conf des paquets applications (container cible différent);
9 9 Gaston TJEBBES
* Mettre les conf sql au gout du jour.
10 1 Gaston TJEBBES
11 10 Gaston TJEBBES
h2. Les choses en vrac : 
12 1 Gaston TJEBBES
13 9 Gaston TJEBBES
* Renommer toutes les variables qui se nomme posh... en envole...;
14 9 Gaston TJEBBES
* Avoir une structure de dépendances cohérente (le sso est sur le maître, pas dans le container web ...);
15 9 Gaston TJEBBES
* Le nom de domaine s'appelle désormais web_domain au lieu de posh_url ou envole_url ...;
16 9 Gaston TJEBBES
* Revoir l'utilisation des répertoires de /home discussion entamée avec Manu (il est possible de fournir un template qui indique à bacula les rep à sauvegarder);
17 9 Gaston TJEBBES
* Un maximum de manipulation doivent être effectuées depuis le master (script de configuration / synchro ...), cela évite de demander à un utilisateur de se connecter sur un container.
18 1 Gaston TJEBBES
19 9 Gaston TJEBBES
h2. Étape 1 : le dictionnaire
20 1 Gaston TJEBBES
21 9 Gaston TJEBBES
Dans le dictionnaire, il faut : 
22 9 Gaston TJEBBES
* Identifier les fichiers qui vont dans le master et ceux qui vont dans le container web (gibii peut être pris en exemple);
23 9 Gaston TJEBBES
* Penser à mettre le package nomdelappli-apps pour qu'il soit tiré dans le conteneur (nomdelappli-apps);
24 9 Gaston TJEBBES
* Renommer éventuellement les variables (eole-nomdelappli);
25 9 Gaston TJEBBES
* Revoir les chemins vers les fichiers .sql qui sont templatisés (cf étape 4).
26 9 Gaston TJEBBES
27 1 Gaston TJEBBES
h2. Étape 2 : les templates
28 1 Gaston TJEBBES
29 10 Gaston TJEBBES
Les modifications à apporter au templates :
30 10 Gaston TJEBBES
* le renommage de variable entraîne logiquement des changements;
31 10 Gaston TJEBBES
* la modification des adresses des services (ldap n'est plus sur le master, ftp non plus)
32 10 Gaston TJEBBES
* Certaines variables ont été renommées :
33 10 Gaston TJEBBES
** le nom de domaine est fournit par une variable unique : web_domain (fournit par le paquet eole-web)
34 10 Gaston TJEBBES
** l'url par défaut d'accès est fournit par la variable : web_default (fournit par le paquet eole-web)
35 1 Gaston TJEBBES
36 9 Gaston TJEBBES
h2. Étape 3:  la division des paquets
37 1 Gaston TJEBBES
38 9 Gaston TJEBBES
Il faut désormais deux paquets pour une application :
39 9 Gaston TJEBBES
* eole-nomdelappli contient les templates, les dictionnaires, scripts de configuration et s'installe dans le container master;
40 9 Gaston TJEBBES
* nomdelappli-apps contient l'application elle-même et s'installe dans le container web.
41 1 Gaston TJEBBES
42 9 Gaston TJEBBES
Il faut modifier : 
43 9 Gaston TJEBBES
* debian/compat et mettre 5 au lieu de 4;
44 9 Gaston TJEBBES
* debian/control pour décrire le paquet source et ses paquets binaires;
45 9 Gaston TJEBBES
* debian/rules pour que DESTDIR ne contienne plus le nom du paquet;
46 9 Gaston TJEBBES
* Makefile pour la séparation des paquets.
47 1 Gaston TJEBBES
48 9 Gaston TJEBBES
NB 1 les dépendances : 
49 9 Gaston TJEBBES
* eole-monappli doit avoir eolebase-minimal dans ses deps, éventuellement eole-sso, eole-mysql
50 9 Gaston TJEBBES
* monappli-apps doit avoir web-pkg dans ses dépendances
51 1 Gaston TJEBBES
52 9 Gaston TJEBBES
NB 2 DESTDIR dans le makefile :
53 9 Gaston TJEBBES
Une fois la modification faite dans le fichier debian/rules, le DESTDIR obtenu dans le Makefile doit être concaténé pour former les DESTDIR des deux paquets binaires. (C'est comme cela que l'on fait plusieurs paquets avec un seul Makefile :-))
54 9 Gaston TJEBBES
Ex : 
55 9 Gaston TJEBBES
<pre>
56 9 Gaston TJEBBES
EOLE_GIBII_DESTDIR=$(DESTDIR)/eole-gibii
57 9 Gaston TJEBBES
GIBII_APPS_DESTDIR=$(DESTDIR)/gibii-apps
58 9 Gaston TJEBBES
</pre>
59 7 Gaston TJEBBES
60 9 Gaston TJEBBES
h2. Étape 4 : Mysql
61 8 Gaston TJEBBES
62 1 Gaston TJEBBES
La gestion des bases de données mysql doit être revue (où quand, comment) ?
63 8 Gaston TJEBBES
64 8 Gaston TJEBBES
Un soucis rencontré jusqu'à présent est la difficulté à retrouver les fichiers .sql.
65 8 Gaston TJEBBES
Voici une proposition de nomenclature envisagée pour placer les fichiers.
66 8 Gaston TJEBBES
67 8 Gaston TJEBBES
h3. Fichier de configuration
68 8 Gaston TJEBBES
69 8 Gaston TJEBBES
Les fichiers ont la même destination, on peut imaginer une structure comme celle-ci
70 13 Gaston TJEBBES
<pre>
71 12 Gaston TJEBBES
72 8 Gaston TJEBBES
fichier dans le dépot                        ->    fichier sur le serveur
73 8 Gaston TJEBBES
74 8 Gaston TJEBBES
mysql/conf/gen/monappli.py                   ->   /usr/share/eole/applications/gen/monappli.py
75 7 Gaston TJEBBES
mysql/conf/passwords/monappli.ini            ->   /usr/share/eole/applications/passwords/monappli.ini
76 1 Gaston TJEBBES
mysql/conf/updates/config.py                 ->   /usr/share/eole/applications/updates/.../config.py
77 11 Gaston TJEBBES
</pre>
78 9 Gaston TJEBBES
79 1 Gaston TJEBBES
h3. Les fichiers .sql 
80 10 Gaston TJEBBES
81 11 Gaston TJEBBES
<pre>
82 1 Gaston TJEBBES
mysql/files/gen/fichiers.sql                 ->   /usr/share/eole/mysql/<nomdelappli>/gen/fichiers.sql
83 7 Gaston TJEBBES
mysql/files/updates/fichiers.sql             ->   /usr/share/eole/mysql/<nomdelappli>/updates/fichiers.sql
84 11 Gaston TJEBBES
</pre>
85 7 Gaston TJEBBES
86 10 Gaston TJEBBES
h3. Impact des modifications 
87 9 Gaston TJEBBES
88 10 Gaston TJEBBES
* Les fichiers de configuration de génération et d'updates doivent être mis au goût du jour (chemin vers les fichiers sql);
89 10 Gaston TJEBBES
* le Makefile doit tenir compte des modifications. (ça doit être à peu près tout en attendant la modification de eole-mysql).