spencer-ki 35169eafd9 refactor directories
refactor

..

..
2022-04-13 19:23:30 -07:00

67 lines
1.8 KiB
Python

# A script for creating the modules map file
import os
import yaml
print("Current dir: " + os.getcwd())
modules = []
module_folders = next(os.walk('.'))[1]
for folder in module_folders:
valid_module = False
module_filenames = []
module = {}
print("searching folder: " + folder)
for filename in os.listdir(folder):
module_filenames.append(filename)
# assume the yaml file is our scenario configuration file
if filename.endswith(".yaml"):
#print("found config file: " + filename)
stream = file(os.path.join(folder, filename), 'r')
config = yaml.load(stream)
#print("Config file yaml: " + str(config))
if 'name' in config:
print("Config file has name: " + config['name'])
valid_module = True
module['name'] = config['name']
if valid_module:
print("Populating module attributes for " + folder)
module['id'] = folder
module['dist'] = 'add'
module['path'] = 'templates\Scenarios\downloaded'
module['files'] = module_filenames
if 'version' in config:
module['version'] = config['version']
else:
module['version'] = 1
if 'requires' in config:
module['requires'] = config['requires']
else:
module['requires'] = 1
modules.append(module)
print("Found modules: " + str(len(modules)))
if len(modules) > 0:
modulemap = {}
#print(str(modules))
for m in modules:
print("adding module: " + m["id"])
modulemap[m['id']] = m
with open('module-map.yaml', 'w') as mapfile:
print("Creating map file...")
yaml.dump(modulemap, mapfile)
print("Success.")