Projet

Général

Profil

Anomalie #5970

Mis à jour par Bruno Boiget il y a plus de 10 ans

Les fonctions 'disabled_if_in' sur les variables xxx_ethx_proxy_link font planter provoquent une erreur dans creoled/reconfigure. erreur.

Pour reproduire : python -d "from creole.loader import creole_loader; creole_loader(load_extras=True)" (ne plante pas sans load_extras)

<pre>

Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 191, in creole_loader
loader.read_dir(dirs, namespace)
File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 801, in read_dir
self._gen_descr(namespace)
File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 1149, in _gen_descr
containers = self.gen_container(paths)
File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 352, in gen_container
ret.append(getattr(self, func_name)(paths))
File "/usr/lib/python2.7/dist-packages/creole/loader.py", line 103, in gen_interfaces
return self.gen_generic('interfaces', paths, copy_requires='ip')
File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 132, in gen_generic
copy_requires=copy_requires)
File "/usr/lib/python2.7/dist-packages/creole/var_loader.py", line 342, in _gen_tiramisu_config
'', options, requires=requires, properties=properties))
File "/usr/lib/python2.7/dist-packages/tiramisu/option.py", line 927, in __init__
super(OptionDescription, self).__init__(name, doc, requires, properties)
File "/usr/lib/python2.7/dist-packages/tiramisu/option.py", line 74, in __init__
requires, self._name)
File "/usr/lib/python2.7/dist-packages/tiramisu/option.py", line 1235, in validate_requires_arg
" action: {1}").format(name, action))
ValueError: inconsistency in action types for option: interface1 action: disabled

</pre>

En commentant ces fonctions, il n'y a plus de message d'erreur (mais il y a surement des effets de bord...).

<pre>

<!-- <condition name='disabled_if_not_in' source='nombre_interfaces'>
<param>1</param>
<target type='interfacelist'>eth0_proxy_link</target>
<target>adresse_ip_eth0_proxy_link</target>
<target>adresse_mask_eth0_proxy_link</target>
<target>adresse_bcast_eth0_proxy_link</target>
<target>proxy_eth0_adresse</target>
<target>proxy_eth0_network</target>
</condition>
<condition name='disabled_if_not_in' source='mode_conteneur_actif'>
<param>oui</param>
<target>adresse_ip_eth0_proxy_link</target>
<target>adresse_mask_eth0_proxy_link</target>
<target>adresse_bcast_eth0_proxy_link</target>
<target>adresse_ip_eth1_proxy_link</target>
<target>adresse_mask_eth1_proxy_link</target>
<target>adresse_bcast_eth1_proxy_link</target>
<target>adresse_ip_eth2_proxy_link</target>
<target>adresse_mask_eth2_proxy_link</target>
<target>adresse_bcast_eth2_proxy_link</target>
<target>adresse_ip_eth3_proxy_link</target>
<target>adresse_mask_eth3_proxy_link</target>
<target>adresse_bcast_eth3_proxy_link</target>
</condition>
-->

</pre>

Retour