Projet

Général

Profil

24 » Historique » Version 25

Joël Cuissinat, 31/01/2013 10:00

1 1 Joël Cuissinat
h1. Eole-2.4
2 14 Joël Cuissinat
3 14 Joël Cuissinat
{{>toc}} 
4 1 Joël Cuissinat
5 1 Joël Cuissinat
h2. Dictionnaires
6 1 Joël Cuissinat
7 1 Joël Cuissinat
Les dictionnaires 2.3 sont théoriquement fonctionnels sur 2.4, merci de remonter les éventuels dysfonctionnements rencontrés !
8 1 Joël Cuissinat
La plupart des variables "intermédiaires" peuvent théoriquement être supprimées (exemple : "maj du dico nut":http://dev-eole.ac-dijon.fr/projects/eole-nut/repository/revisions/5620af7f9b21444c1b873ee9b7fe0414aee468ee/diff/dicos/01_nut.xml)
9 1 Joël Cuissinat
10 8 Joël Cuissinat
La version 2.4 apporte de nouvelles notions et notamment :
11 8 Joël Cuissinat
* *disabled* : pour des variables désactivées (cf. http://dev-eole.ac-dijon.fr/projects/tiramisu/wiki/RequiredEtDisabled)
12 8 Joël Cuissinat
* *frozen* : pour des variables non modifiables une fois initialisées (cf. #1328)
13 24 Joël Cuissinat
* *host*, *fstab*, *firewall* : gestion avancée des conteneurs (cf. #4666)
14 8 Joël Cuissinat
15 8 Joël Cuissinat
16 1 Joël Cuissinat
h2. Templates 
17 1 Joël Cuissinat
18 2 Joël Cuissinat
Les templates 2.3 sont théoriquement fonctionnels sur 2.4.
19 2 Joël Cuissinat
Évidemment certains devront certainement être mis à niveau.
20 1 Joël Cuissinat
21 4 Joël Cuissinat
h2. Fichier de configuration
22 4 Joël Cuissinat
23 4 Joël Cuissinat
Désormais, seul le fichier */etc/eole/config.eol* fait foi.
24 4 Joël Cuissinat
25 4 Joël Cuissinat
Il est automatiquement chargé par les programmes :
26 4 Joël Cuissinat
* gen_config
27 4 Joël Cuissinat
* instance 
28 4 Joël Cuissinat
* reconfigure
29 4 Joël Cuissinat
30 6 Joël Cuissinat
h2. Nouveaux chemins 
31 6 Joël Cuissinat
32 6 Joël Cuissinat
* */usr/lib/eole* : librairies EOLE (remplacent _FonctionsEoleNg_)
33 6 Joël Cuissinat
* */usr/share/eole/sbin* : scripts EOLE
34 6 Joël Cuissinat
* */usr/share/eole/diagnose* : scripts diagnose (plus de sous-répertoires)
35 6 Joël Cuissinat
36 9 Joël Cuissinat
Au niveau des dépôts de code, ces répertoires sont nativement gérés par "eole-skeletor":http://dev-eole.ac-dijon.fr/projects/eole-skeletor/wiki/Doc-geting-started
37 9 Joël Cuissinat
38 5 Joël Cuissinat
h2. Mise à jour 
39 5 Joël Cuissinat
40 5 Joël Cuissinat
cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/MajAuto24
41 5 Joël Cuissinat
42 11 Joël Cuissinat
h2. CreoleLint
43 11 Joël Cuissinat
44 11 Joël Cuissinat
cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/CreoleLint24
45 11 Joël Cuissinat
46 20 Emmanuel GARETTE
h3. Gestion des Locks
47 20 Emmanuel GARETTE
48 20 Emmanuel GARETTE
http://dev-eole.ac-dijon.fr/projects/creole/wiki/Lock24
49 20 Emmanuel GARETTE
50 1 Joël Cuissinat
h2. Programmation shell
51 1 Joël Cuissinat
52 1 Joël Cuissinat
h3. CreoleGet
53 1 Joël Cuissinat
54 1 Joël Cuissinat
<pre>
55 1 Joël Cuissinat
.ParseDico
56 1 Joël Cuissinat
echo $mavariable
57 1 Joël Cuissinat
</pre>
58 1 Joël Cuissinat
est remplacé par :
59 1 Joël Cuissinat
<pre>
60 1 Joël Cuissinat
echo $(CreoleGet mavariable)
61 1 Joël Cuissinat
</pre>
62 1 Joël Cuissinat
63 1 Joël Cuissinat
ATTENTION : à ce jour, pour accéder à une variable esclave, il faut connaître la variable maître :
64 1 Joël Cuissinat
<pre>
65 1 Joël Cuissinat
echo $(CreoleGet lamaster.lesclave)
66 1 Joël Cuissinat
</pre>
67 1 Joël Cuissinat
68 1 Joël Cuissinat
h3. CreoleRun
69 1 Joël Cuissinat
70 1 Joël Cuissinat
<pre>
71 1 Joël Cuissinat
./usr/share/eole/FonctionsEoleNg
72 1 Joël Cuissinat
RunCmd "ma -commande" conteneur
73 1 Joël Cuissinat
</pre>
74 1 Joël Cuissinat
est remplacé par :
75 3 Joël Cuissinat
<pre>
76 1 Joël Cuissinat
CreoleRun "ma -commande" conteneur
77 1 Joël Cuissinat
</pre>
78 7 Joël Cuissinat
79 7 Joël Cuissinat
h3. Interactions avec l'utilisateur
80 7 Joël Cuissinat
81 7 Joël Cuissinat
<pre>
82 7 Joël Cuissinat
. /usr/lib/eole/ihm.sh
83 7 Joël Cuissinat
EchoRouge "Attention"
84 7 Joël Cuissinat
Question_ouinon "Êtes-vous bien sûr de vouloir faire cela ?"
85 7 Joël Cuissinat
</pre>
86 7 Joël Cuissinat
87 7 Joël Cuissinat
h3. Tests système
88 7 Joël Cuissinat
89 7 Joël Cuissinat
<pre>
90 7 Joël Cuissinat
. /usr/lib/eole/diagnose.sh
91 7 Joël Cuissinat
TestService "mon SSH" localhost:22
92 7 Joël Cuissinat
</pre>
93 7 Joël Cuissinat
94 10 Joël Cuissinat
h2. Programmation python
95 10 Joël Cuissinat
96 15 Joël Cuissinat
h3. CreoleClient
97 15 Joël Cuissinat
98 21 Joël Cuissinat
h4. Obtenir la valeur d'une variable
99 21 Joël Cuissinat
100 15 Joël Cuissinat
<pre>
101 15 Joël Cuissinat
from creole import parsedico
102 16 Joël Cuissinat
from creole.eosfunc import load_container_var
103 15 Joël Cuissinat
dico = parsedico.parse_dico() 
104 15 Joël Cuissinat
print dico['nom_machine']
105 16 Joël Cuissinat
conteneurs = load_container_var()
106 16 Joël Cuissinat
print conteneurs['container_path_annuaire']
107 15 Joël Cuissinat
</pre>
108 1 Joël Cuissinat
109 17 Joël Cuissinat
est remplacé par :
110 1 Joël Cuissinat
111 1 Joël Cuissinat
<pre>
112 1 Joël Cuissinat
from creole import client
113 16 Joël Cuissinat
dico = client.CreoleClient()
114 16 Joël Cuissinat
print dico.get_creole('nom_machine')
115 16 Joël Cuissinat
print dico.get_creole('container_path_annuaire')
116 21 Joël Cuissinat
</pre>
117 21 Joël Cuissinat
118 21 Joël Cuissinat
h4. Obtenir le dictionnaire des variables
119 21 Joël Cuissinat
120 21 Joël Cuissinat
L'utilisation de _get_creole_ sans argument, permet d'obtenir un dictionnaire des variables similaire à celui de la 2.3 et ainsi de (re)faire fonctionner d'anciennes applications sans modifications de code majeures (exemple pour l'EAD).
121 21 Joël Cuissinat
122 21 Joël Cuissinat
<pre>
123 22 Joël Cuissinat
from creole.client import CreoleClient
124 21 Joël Cuissinat
dico = CreoleClient().get_creole()
125 21 Joël Cuissinat
ip_locale = dico['adresse_ip_eth0']
126 15 Joël Cuissinat
</pre>
127 1 Joël Cuissinat
128 1 Joël Cuissinat
h2. Migration
129 1 Joël Cuissinat
130 1 Joël Cuissinat
h3. eole-web
131 1 Joël Cuissinat
132 12 Emmanuel GARETTE
* */etc/apache2/sites-enable/scribe* est à supprimer (dans le conteneur)
133 1 Joël Cuissinat
134 13 Joël Cuissinat
h3. eole-common
135 1 Joël Cuissinat
136 18 Emmanuel GARETTE
* 01_network.xml :
137 18 Emmanuel GARETTE
# la valeur "aucun" de la variable *alias_gw_eth?* est remplacée par _None_
138 18 Emmanuel GARETTE
# :%s/adresse_ip_vlan_eth/vlan_ip_eth/g
139 18 Emmanuel GARETTE
# :%s/adresse_netmask_vlan_eth/vlan_netmask_eth/g
140 18 Emmanuel GARETTE
# :%s/adresse_network_vlan_eth/vlan_network_eth/g
141 18 Emmanuel GARETTE
# :%s/adresse_broadcast_vlan_eth/vlan_broadcast_eth/g
142 18 Emmanuel GARETTE
# :%s/adresse_gw_vlan_eth/vlan_gw_eth/g
143 19 Emmanuel GARETTE
# :%s/id_vlan_eth/vlan_id_eth/g
144 18 Emmanuel GARETTE
# la valeur "aucun" de la variable *vlan_gw_eth?* est remplacée par _None_
145 13 Joël Cuissinat
146 23 Joël Cuissinat
h3. eole-dhcp
147 23 Joël Cuissinat
148 23 Joël Cuissinat
* /etc/dhcp3 -> /etc/dhcp
149 23 Joël Cuissinat
* /etc/init.d/dhcp3-server -> /etc/init.d/isc-dhcp-server
150 23 Joël Cuissinat
* mais pas de problème spécifique puisque pour les adresses fixées, c'est toujours */var/lib/eole/config/dhcp.conf* qui fait foi
151 23 Joël Cuissinat
152 13 Joël Cuissinat
h2. Packaging
153 13 Joël Cuissinat
154 25 Joël Cuissinat
h3. Portage des projets vers 2.4 et packaging 2.4
155 25 Joël Cuissinat
156 13 Joël Cuissinat
cf. page dédiée :  http://dev-eole.ac-dijon.fr/projects/eole/wiki/EoleDebianPackaging24
157 25 Joël Cuissinat
158 25 Joël Cuissinat
h3. Nommage des paquets
159 25 Joël Cuissinat
160 25 Joël Cuissinat
_Premières conclusions issues de la discussion #3096_
161 25 Joël Cuissinat
162 25 Joël Cuissinat
* Paquets de base
163 25 Joël Cuissinat
** module non conteneur : *eole-server* (remplace eole-common)
164 25 Joël Cuissinat
** module conteneur : *eole-lxc-controller* (remplace eole-conteneur)
165 25 Joël Cuissinat
* Paquets de service
166 25 Joël Cuissinat
** dicos/templates : *eole-<service>* 
167 25 Joël Cuissinat
** dépendances : *eole-<service>-pkg* (au lieu de <service>-pkg)
168 25 Joël Cuissinat
* Paquets de module 
169 25 Joël Cuissinat
** dicos/templates : *eole-<module>* (remplace conf-<module> + <module>-pkg)
170 25 Joël Cuissinat
** dépendances (pour modules non conteneur) : ?