From 96fbe99478f1beb9df45a82ab5fbe6d8b989e931 Mon Sep 17 00:00:00 2001 From: Michele Carignani Date: Tue, 26 Feb 2019 18:47:51 +0100 Subject: [PATCH] load several yaml files and print a numbered outline --- main.py | 57 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 49 insertions(+), 8 deletions(-) diff --git a/main.py b/main.py index 1124821..0591013 100755 --- a/main.py +++ b/main.py @@ -3,22 +3,63 @@ import toscaparser import sys import os -import toscaparser.yaml +#import toscaparser.tosca_template +import toscaparser.utils.yamlparser as yaml print "Opening file " + sys.argv[1] #res = toscaparser.validate(sys.argv[1]) #templ = toscaparser.tosca_template.ToscaTemplate(os.path.join( # os.path.dirname(os.path.abspath(__file__)), -# 'data', +# 'data', # sys.argv[1])) +TEMPLATES = {} -yaml_data = open(sys.argv[1]).read() +def load_template(fn, templs, key): + yaml_data = open(fn).read() + templs[key] = yaml.simple_ordered_parse(yaml_data) -templ = yaml.simple_ordered_parse(yaml_data) +tosca_types = [ + 'data_types', + 'artifact_types', + 'capability_types', + 'requirements_types', + 'relationship_types', + 'interface_types', + 'node_types', + 'group_types', + 'policy_types' +] -def get_datatypes(t): - return t['data_types'] +ids = [ 6, 2, 1] -for datatype in get_datatypes(templ): - print i \ No newline at end of file +def print_lvl(n, txt): + index = ".".join(map(str,ids[:(n+1)])) + print index + " " + ('-'*(n+1)) + ' ' + txt + +def print_all_types(templ, lvl): + for tt in tosca_types: + if not tt in templ: + continue + print_lvl(lvl, tt) + for dt in templ[tt]: + print_lvl(lvl + 1, dt) + ids[lvl+1] = ids[lvl+1] + 1 + ids[lvl+1] = 1 + ids[lvl] = ids[lvl] + 1 + print + ids[lvl] = 2 + +FOLDR = sys.argv[1] + +fns = { + 'VNFD' : 'etsi_nfv_sol001_vnfd_2_5_1_types.yaml', + 'NSD' : 'etsi_nfv_sol001_nsd_2_5_1_types.yaml', + 'PNFD' : 'etsi_nfv_sol001_pnfd_2_5_1_types.yaml' +} + +for fn in ['VNFD', 'NSD', 'PNFD']: + load_template(FOLDR + '/' + fns[fn], TEMPLATES, fn) + print_lvl(0, fn) + print_all_types(TEMPLATES[fn], 1) + ids[0] = ids[0] + 1 -- GitLab