From 0eab59a742947db33e696a8d1805fa615689b426 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Wed, 19 Jul 2017 14:49:45 +0400 Subject: [PATCH] filtrer les variables avec fnmatch --- lib/ulib/support/deploydb.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/ulib/support/deploydb.py b/lib/ulib/support/deploydb.py index 6dac1df..b1d7e2c 100755 --- a/lib/ulib/support/deploydb.py +++ b/lib/ulib/support/deploydb.py @@ -5,6 +5,7 @@ import os, sys, re from os import path from argparse import ArgumentParser from glob import glob +from fnmatch import fnmatch USER_CONFDIR = '~/etc/deploy' SYSTEM_CONFDIR = '/var/local/deploy' @@ -1521,7 +1522,13 @@ def __resolve_format(o, query_type): return format, ovars, lvars, ofunc, lfunc, avars def print_var(name, values, format, avars, is_values=False): - if avars is not None and name not in avars: return + if avars is not None: + found = False + for avar in avars: + if fnmatch(name, avar): + found = True + break + if not found: return if not isseq(values): values = [values] if format == 'shell': params = (name, " ".join(qshell(values))) @@ -1698,7 +1705,7 @@ Spécifier le format pour la sortie: >>> La valeur par défaut est shell""") AP.add_argument('-v', '--include-vars', action='append', dest='vars', metavar='VARS...', - help=u"Spécifier les variables qui doivent être affichées. Par défaut, toutes les variables sont affichées.") + help=u"Spécifier les variables qui doivent être affichées sous forme de chaine glob e.g 'prefix_*' pour toutes les variables qui commencent par prefix. Plusieurs spécifications peuvent être données en les séparant par une virgule. Par défaut, toutes les variables sont affichées.") AP.add_argument('-o', '--object-vars', action='store_true', dest='object_vars', help=u"Afficher uniquement les variables associées aux objets.") AP.add_argument('-l', '--link-vars', action='store_true', dest='link_vars',