24 » Historique » Version 34
Joël Cuissinat, 03/10/2013 17:11
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 | 32 | Fabrice Barconnière | h3. Les types Creole |
16 | 32 | Fabrice Barconnière | |
17 | 32 | Fabrice Barconnière | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/TypeCreole24 |
18 | 32 | Fabrice Barconnière | |
19 | 32 | Fabrice Barconnière | h3. Les conteneurs |
20 | 32 | Fabrice Barconnière | |
21 | 32 | Fabrice Barconnière | Ajouter une balise dans la partie <containers> et <files> des dictionnaires : |
22 | 32 | Fabrice Barconnière | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/AjouterUneBaliseContainers24 |
23 | 32 | Fabrice Barconnière | |
24 | 33 | Fabrice Barconnière | h3. Gestion du firewall |
25 | 33 | Fabrice Barconnière | |
26 | 33 | Fabrice Barconnière | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/firewall24 |
27 | 33 | Fabrice Barconnière | |
28 | 1 | Joël Cuissinat | h2. Templates |
29 | 1 | Joël Cuissinat | |
30 | 2 | Joël Cuissinat | Les templates 2.3 sont théoriquement fonctionnels sur 2.4. |
31 | 2 | Joël Cuissinat | Évidemment certains devront certainement être mis à niveau. |
32 | 1 | Joël Cuissinat | |
33 | 28 | Joël Cuissinat | h3. Utilisation de "creole_client" |
34 | 28 | Joël Cuissinat | |
35 | 28 | Joël Cuissinat | Les fonctionnalités de *creole_client* sont utilisables directement dans les templates |
36 | 28 | Joël Cuissinat | <pre> |
37 | 28 | Joël Cuissinat | %%creole_client.get_creole('activer_truc', 'non') |
38 | 28 | Joël Cuissinat | </pre> |
39 | 28 | Joël Cuissinat | |
40 | 31 | Joël Cuissinat | Cependant, en pratique, cet exemple peut avantageusement être remplacé en utilisant la fonction native *%%getVar* : |
41 | 31 | Joël Cuissinat | <pre> |
42 | 31 | Joël Cuissinat | %%getVar('activer_truc', 'non') |
43 | 31 | Joël Cuissinat | </pre> |
44 | 31 | Joël Cuissinat | |
45 | 31 | Joël Cuissinat | |
46 | 29 | Joël Cuissinat | h3. Utilisation de l'attribut ".value" |
47 | 28 | Joël Cuissinat | |
48 | 28 | Joël Cuissinat | L'attribut ".value" ne devrait plus être utilisé dans les templates 2.4. |
49 | 28 | Joël Cuissinat | |
50 | 30 | Joël Cuissinat | h3. Utilisation de l'attribut ".index" |
51 | 28 | Joël Cuissinat | |
52 | 28 | Joël Cuissinat | L'attribut ".index" ne devrait plus être utilisé dans les templates 2.4. |
53 | 28 | Joël Cuissinat | La fonction "enumerate" peut être utilisée pour remplacer le code existant : |
54 | 28 | Joël Cuissinat | <pre> |
55 | 28 | Joël Cuissinat | %for %%idx, %%val in %%enumerate(%%variable) |
56 | 28 | Joël Cuissinat | La valeur %%val possède l'index %%idx |
57 | 28 | Joël Cuissinat | %end for |
58 | 28 | Joël Cuissinat | </pre> |
59 | 28 | Joël Cuissinat | |
60 | 4 | Joël Cuissinat | h2. Fichier de configuration |
61 | 4 | Joël Cuissinat | |
62 | 4 | Joël Cuissinat | Désormais, seul le fichier */etc/eole/config.eol* fait foi. |
63 | 4 | Joël Cuissinat | |
64 | 4 | Joël Cuissinat | Il est automatiquement chargé par les programmes : |
65 | 4 | Joël Cuissinat | * gen_config |
66 | 4 | Joël Cuissinat | * instance |
67 | 4 | Joël Cuissinat | * reconfigure |
68 | 4 | Joël Cuissinat | |
69 | 6 | Joël Cuissinat | h2. Nouveaux chemins |
70 | 6 | Joël Cuissinat | |
71 | 6 | Joël Cuissinat | * */usr/lib/eole* : librairies EOLE (remplacent _FonctionsEoleNg_) |
72 | 6 | Joël Cuissinat | * */usr/share/eole/sbin* : scripts EOLE |
73 | 6 | Joël Cuissinat | * */usr/share/eole/diagnose* : scripts diagnose (plus de sous-répertoires) |
74 | 6 | Joël Cuissinat | |
75 | 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 |
76 | 5 | Joël Cuissinat | |
77 | 5 | Joël Cuissinat | h2. Mise à jour |
78 | 5 | Joël Cuissinat | |
79 | 5 | Joël Cuissinat | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/MajAuto24 |
80 | 11 | Joël Cuissinat | |
81 | 11 | Joël Cuissinat | h2. CreoleLint |
82 | 11 | Joël Cuissinat | |
83 | 11 | Joël Cuissinat | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/CreoleLint24 |
84 | 1 | Joël Cuissinat | |
85 | 32 | Fabrice Barconnière | h2. Gestion des Locks |
86 | 20 | Emmanuel GARETTE | |
87 | 1 | Joël Cuissinat | http://dev-eole.ac-dijon.fr/projects/creole/wiki/Lock24 |
88 | 32 | Fabrice Barconnière | |
89 | 32 | Fabrice Barconnière | h2. Gestion des schedules (Mises à jour automatiques par exemple) |
90 | 32 | Fabrice Barconnière | |
91 | 32 | Fabrice Barconnière | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/creole/wiki/Schedule24 |
92 | 32 | Fabrice Barconnière | |
93 | 32 | Fabrice Barconnière | |
94 | 20 | Emmanuel GARETTE | |
95 | 1 | Joël Cuissinat | h2. Programmation shell |
96 | 1 | Joël Cuissinat | |
97 | 1 | Joël Cuissinat | h3. CreoleGet |
98 | 1 | Joël Cuissinat | |
99 | 1 | Joël Cuissinat | <pre> |
100 | 1 | Joël Cuissinat | .ParseDico |
101 | 1 | Joël Cuissinat | echo $mavariable |
102 | 1 | Joël Cuissinat | </pre> |
103 | 1 | Joël Cuissinat | est remplacé par : |
104 | 1 | Joël Cuissinat | <pre> |
105 | 1 | Joël Cuissinat | echo $(CreoleGet mavariable) |
106 | 1 | Joël Cuissinat | </pre> |
107 | 1 | Joël Cuissinat | |
108 | 1 | Joël Cuissinat | ATTENTION : à ce jour, pour accéder à une variable esclave, il faut connaître la variable maître : |
109 | 1 | Joël Cuissinat | <pre> |
110 | 1 | Joël Cuissinat | echo $(CreoleGet lamaster.lesclave) |
111 | 1 | Joël Cuissinat | </pre> |
112 | 1 | Joël Cuissinat | |
113 | 34 | Joël Cuissinat | Depuis #6075 (alpha2), si on n'est pas sûr que la variable existe ou qu'elle soit active, on peut utiliser : |
114 | 34 | Joël Cuissinat | <pre> |
115 | 34 | Joël Cuissinat | echo $(CreoleGet mavariable valeurpardefaut) |
116 | 34 | Joël Cuissinat | </pre> |
117 | 34 | Joël Cuissinat | |
118 | 1 | Joël Cuissinat | h3. CreoleRun |
119 | 1 | Joël Cuissinat | |
120 | 1 | Joël Cuissinat | <pre> |
121 | 1 | Joël Cuissinat | ./usr/share/eole/FonctionsEoleNg |
122 | 1 | Joël Cuissinat | RunCmd "ma -commande" conteneur |
123 | 1 | Joël Cuissinat | </pre> |
124 | 1 | Joël Cuissinat | est remplacé par : |
125 | 3 | Joël Cuissinat | <pre> |
126 | 1 | Joël Cuissinat | CreoleRun "ma -commande" conteneur |
127 | 1 | Joël Cuissinat | </pre> |
128 | 7 | Joël Cuissinat | |
129 | 7 | Joël Cuissinat | h3. Interactions avec l'utilisateur |
130 | 7 | Joël Cuissinat | |
131 | 7 | Joël Cuissinat | <pre> |
132 | 7 | Joël Cuissinat | . /usr/lib/eole/ihm.sh |
133 | 7 | Joël Cuissinat | EchoRouge "Attention" |
134 | 7 | Joël Cuissinat | Question_ouinon "Êtes-vous bien sûr de vouloir faire cela ?" |
135 | 7 | Joël Cuissinat | </pre> |
136 | 7 | Joël Cuissinat | |
137 | 7 | Joël Cuissinat | h3. Tests système |
138 | 7 | Joël Cuissinat | |
139 | 7 | Joël Cuissinat | <pre> |
140 | 7 | Joël Cuissinat | . /usr/lib/eole/diagnose.sh |
141 | 7 | Joël Cuissinat | TestService "mon SSH" localhost:22 |
142 | 7 | Joël Cuissinat | </pre> |
143 | 7 | Joël Cuissinat | |
144 | 10 | Joël Cuissinat | h2. Programmation python |
145 | 10 | Joël Cuissinat | |
146 | 15 | Joël Cuissinat | h3. CreoleClient |
147 | 15 | Joël Cuissinat | |
148 | 21 | Joël Cuissinat | h4. Obtenir la valeur d'une variable |
149 | 21 | Joël Cuissinat | |
150 | 15 | Joël Cuissinat | <pre> |
151 | 15 | Joël Cuissinat | from creole import parsedico |
152 | 16 | Joël Cuissinat | from creole.eosfunc import load_container_var |
153 | 15 | Joël Cuissinat | dico = parsedico.parse_dico() |
154 | 15 | Joël Cuissinat | print dico['nom_machine'] |
155 | 16 | Joël Cuissinat | conteneurs = load_container_var() |
156 | 16 | Joël Cuissinat | print conteneurs['container_path_annuaire'] |
157 | 15 | Joël Cuissinat | </pre> |
158 | 1 | Joël Cuissinat | |
159 | 17 | Joël Cuissinat | est remplacé par : |
160 | 1 | Joël Cuissinat | |
161 | 1 | Joël Cuissinat | <pre> |
162 | 1 | Joël Cuissinat | from creole import client |
163 | 16 | Joël Cuissinat | dico = client.CreoleClient() |
164 | 16 | Joël Cuissinat | print dico.get_creole('nom_machine') |
165 | 16 | Joël Cuissinat | print dico.get_creole('container_path_annuaire') |
166 | 21 | Joël Cuissinat | </pre> |
167 | 21 | Joël Cuissinat | |
168 | 26 | Joël Cuissinat | Dans le cas où l'on n'est pas sûr de l'existence de la variable, une valeur par défaut peut être passée en second paramètre : |
169 | 26 | Joël Cuissinat | |
170 | 26 | Joël Cuissinat | <pre> |
171 | 26 | Joël Cuissinat | if dico.get_creole('activer_service', 'non') == 'oui': |
172 | 26 | Joël Cuissinat | print "On est sûr que oui" |
173 | 26 | Joël Cuissinat | </pre> |
174 | 26 | Joël Cuissinat | |
175 | 21 | Joël Cuissinat | h4. Obtenir le dictionnaire des variables |
176 | 21 | Joël Cuissinat | |
177 | 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). |
178 | 21 | Joël Cuissinat | |
179 | 21 | Joël Cuissinat | <pre> |
180 | 22 | Joël Cuissinat | from creole.client import CreoleClient |
181 | 21 | Joël Cuissinat | dico = CreoleClient().get_creole() |
182 | 21 | Joël Cuissinat | ip_locale = dico['adresse_ip_eth0'] |
183 | 15 | Joël Cuissinat | </pre> |
184 | 1 | Joël Cuissinat | |
185 | 1 | Joël Cuissinat | h2. Migration |
186 | 1 | Joël Cuissinat | |
187 | 1 | Joël Cuissinat | h3. eole-web |
188 | 1 | Joël Cuissinat | |
189 | 12 | Emmanuel GARETTE | * */etc/apache2/sites-enable/scribe* est à supprimer (dans le conteneur) |
190 | 1 | Joël Cuissinat | |
191 | 13 | Joël Cuissinat | h3. eole-common |
192 | 1 | Joël Cuissinat | |
193 | 18 | Emmanuel GARETTE | * 01_network.xml : |
194 | 18 | Emmanuel GARETTE | # la valeur "aucun" de la variable *alias_gw_eth?* est remplacée par _None_ |
195 | 18 | Emmanuel GARETTE | # :%s/adresse_ip_vlan_eth/vlan_ip_eth/g |
196 | 18 | Emmanuel GARETTE | # :%s/adresse_netmask_vlan_eth/vlan_netmask_eth/g |
197 | 18 | Emmanuel GARETTE | # :%s/adresse_network_vlan_eth/vlan_network_eth/g |
198 | 18 | Emmanuel GARETTE | # :%s/adresse_broadcast_vlan_eth/vlan_broadcast_eth/g |
199 | 18 | Emmanuel GARETTE | # :%s/adresse_gw_vlan_eth/vlan_gw_eth/g |
200 | 19 | Emmanuel GARETTE | # :%s/id_vlan_eth/vlan_id_eth/g |
201 | 18 | Emmanuel GARETTE | # la valeur "aucun" de la variable *vlan_gw_eth?* est remplacée par _None_ |
202 | 13 | Joël Cuissinat | |
203 | 23 | Joël Cuissinat | h3. eole-dhcp |
204 | 23 | Joël Cuissinat | |
205 | 23 | Joël Cuissinat | * /etc/dhcp3 -> /etc/dhcp |
206 | 23 | Joël Cuissinat | * /etc/init.d/dhcp3-server -> /etc/init.d/isc-dhcp-server |
207 | 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 |
208 | 13 | Joël Cuissinat | |
209 | 13 | Joël Cuissinat | h2. Packaging |
210 | 25 | Joël Cuissinat | |
211 | 25 | Joël Cuissinat | h3. Portage des projets vers 2.4 et packaging 2.4 |
212 | 13 | Joël Cuissinat | |
213 | 25 | Joël Cuissinat | cf. page dédiée : http://dev-eole.ac-dijon.fr/projects/eole/wiki/EoleDebianPackaging24 |
214 | 25 | Joël Cuissinat | |
215 | 25 | Joël Cuissinat | h3. Nommage des paquets |
216 | 25 | Joël Cuissinat | |
217 | 25 | Joël Cuissinat | _Premières conclusions issues de la discussion #3096_ |
218 | 25 | Joël Cuissinat | |
219 | 25 | Joël Cuissinat | * Paquets de base |
220 | 25 | Joël Cuissinat | ** module non conteneur : *eole-server* (remplace eole-common) |
221 | 25 | Joël Cuissinat | ** module conteneur : *eole-lxc-controller* (remplace eole-conteneur) |
222 | 25 | Joël Cuissinat | * Paquets de service |
223 | 25 | Joël Cuissinat | ** dicos/templates : *eole-<service>* |
224 | 25 | Joël Cuissinat | ** dépendances : *eole-<service>-pkg* (au lieu de <service>-pkg) |
225 | 27 | Joël Cuissinat | * Paquets de module |
226 | 27 | Joël Cuissinat | ** méta-paquet de module : *eole-<nom_module>-module* (remplace <nom_module>-pkg) |
227 | 1 | Joël Cuissinat | ** dicos/templates : *eole-<nom_module>* (remplace conf-<nom_module>) |
228 | 27 | Joël Cuissinat | ** dépendances (pour modules non conteneur) : ? |