Projet

Général

Profil

Tâche #24645

Scénario #24336: Bareos : permettre de configurer un serveurs EOLE en tant que Client seul

Creole : pouvoir utiliser des options descriptions dynamiques

Ajouté par Emmanuel GARETTE il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
24/08/2018
Echéance:
% réalisé:

100%

Restant à faire (heures):
0.0

Description

L'idée est d'avoir des optiondescriptions qui se crées suivent le contenu d'une variable.

Voici un exemple via tiramisu :

[gnunux@localhost tiramisu]$ python3
Python 3.6.5 (default, Mar 29 2018, 18:20:46) 
[GCC 8.0.1 20180317 (Red Hat 8.0.1-0.19)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> def calc_val(val):
...     return val
... 
>>> from tiramisu.config import Config
>>> from tiramisu.option import UnicodeOption, DynOptionDescription, OptionDescription
>>> src = UnicodeOption('src', '', multi=True)
>>> option = UnicodeOption('option_', '')
>>> dod = DynOptionDescription('dod_', '', [option], callback=calc_val, callback_params={'': ((src, False),)})
>>> config = Config(OptionDescription('root', '', [src, dod]))

Si on regarde le contenu de la configuration on ne voit aucune option nommé "option_" :

>>> config.make_dict()
{'src': []}

Si on ajouter une valeurs à src :

>>> config.src.append(u'test1')

Une option description "od_test1" apparait ('od_' + la valeur de src) avec dedans une option "option_test1" ('option_' + la valeur de src) :

>>> config.make_dict()
{'src': ['test1'], 'dod_test1.option_test1': None}

Ainsi de suite :

>>> config.src.append(u'test2')
>>> config.make_dict()
{'src': ['test1', 'test2'], 'dod_test1.option_test1': None, 'dod_test2.option_test2': None}

Historique

#1 Mis à jour par Emmanuel GARETTE il y a plus de 5 ans

  • Statut changé de Nouveau à Résolu
  • Assigné à mis à Emmanuel GARETTE
  • % réalisé changé de 0 à 100

Commit dans la branche Creole.

#2 Mis à jour par Emmanuel IHRY il y a plus de 5 ans

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) mis à 0.0

Formats disponibles : Atom PDF