RequiredEtDisabled » Historique » Version 5
« Précédent -
Version 5/6
(diff) -
Suivant » -
Version actuelle
Joël Cuissinat, 31/05/2013 15:17
RequiredEtDisabled¶
Terminologie¶
Les termes employés ici sont les termes Tiramisu pour plus de clareté.
Le hidden_if_(not_)in de Créole s'appellera ici disabled_if_(not_in)in.
Un disabled_if_in place un requires sur la variable de type : nom de la variable à tester, la valeur attendue sur la variable à tester, et l' action correspondante.
Description des cas d'utilisation¶
- Cas 1 :
Requires sur adresse_ip_proxy : si activer_proxy est à non la variable est disabled.
- Cas 2 :
Requires sur activer_phpmyadmin : si activer_mysql est à non la variable est disabled.
Requires sur adresse_ip_phpmyadmin : si activer_phpmyadmin est à non la variable est disabled.
- Cas
<condition name='hidden_if_in'>
avec une variable désactivée (ou inexistante) en source :
Masquage de la famille proxy authentifié 2 selon la valeur de activer_squid_auth dans 23_proxy.xml
- Cas
<fill name='calc_val'>
avec une variable inexistante (ou désactivée) en paramètre :
Remplissage de ip_serveur_ldap_1 avec adresse_ip_ldap dans 23_proxy.xml (eole-proxy:fc461f3b)
Remplissage de proxy_ldap_base_dn avec ldap_base_dn dans 23_proxy.xml
- Cas
<fill name='calc_multi_val>
avec variables inexistantes (ou désactivées) en paramètres :
Remplissage de ssl_subjectaltname_ns avec revprox_domainname et/ou eolesso_adresse dans 00_common.xml (#5485)
Problématique¶
Dans Créole on utilise deux types de requires :
disabled_if_in
: pour désactiver une variable ;freeze_if_in
: sert à la variable calculée pour passer une variable en mode automatique sans possibilité de changer la valeur.
Le problème se pose sur le cas 2. Si activer_phpmyadmin est désactivé parce que activer_mysql est à non, on ne peut pas faire le requires pour adresse_ip_phpmyadmin.
Solutions¶
Proposition 1 :¶
Faire une liste de propriété "transitive" lors des requires. Cela veut dire que si on veut déterminé si une variable est disabled, si la variable à tester est à disabled, la variable est disabled aussi.
Par contre, si la variable à une autre propriété, elle peut faire un raise.