Projet

Général

Profil

Proposition Scénario #5158

Mis à jour par Emmanuel GARETTE il y a plus de 10 ans

J’ai tenté de définir deux fois la même interface de conteneur avec des interfacelist afin d’en cacher une ou l’autre, mais cela ne fonctionne pas :

<pre><code class="XML">
<interface linkto="eth0"
ip="adresse_ip_ltsp_link"
mask="adresse_mask_ltsp_link"
bcast="adresse_bcast_ltsp_link"
method="bridge"
interfacelist="ltsp_mode_1_carte">
ltsp_net
</interface>
<interface linkto="eth1"
ip="adresse_ip_ltsp_link"
mask="adresse_mask_ltsp_link"
bcast="adresse_bcast_ltsp_link"
method="bridge"
interfacelist="ltsp_mode_2_cartes">
ltsp_net
</interface>
</code></pre>

<pre><code class="python">
>>> from creole.loader import creole_loader
>>> conf = creole_loader()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 1402, in creole_loader
loader = get_loader(namespace, load_values)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 1425, in get_loader
loader.read_dir(dirs, namespace)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 861, in read_dir
self._read_dir(namespace, force_no_container)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 1182, in _read_dir
containers = self.gen_container(paths)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 780, in gen_container
ret.append(getattr(self, func_name)(paths))
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 588, in gen_interfaces
return self.gen_generic('interfaces', paths)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 443, in gen_generic
choice_constrainte, requires_key)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 701, in _gen_tiramisu_config
variables = self._config_list_to_dict(gvariables)
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 677, in _config_list_to_dict
raise ConfigError(u"le nom ({0}) est déjà utilisé".format(name))
creole.error.ConfigError
</code></pre>

Il est possible de contourner le problème en ajoutant un suffix *0* ou *1* en fonction de l’interface utilisée, mais dans ce cas il n’est plus possible d’utiliser simplement le nom de l’interface à l’intérieur du conteneur.

Exigence : Une balise interface est liée à l'interface nécessaire.

Retour