Source code for ecpi.scripts.ecpi_update_schema_json

#! /usr/bin/env python3
"""
ecpi script : update schema json of eclairs pipeline and template xlsx parameter file
"""


import argparse
import os.path

import ecpi.logger_ecpi as log_ecpi
from ecpi_garage.pipeline.specs.master_parameter import MasterParameterToEcpiSchemaJson
from ecpi_garage.pipeline.specs.spreadsheet_for_params import TemplateFileByLevelExpertise
from ecpi.common import get_path_pipeline  # get_root_eclairs


[docs]def main(): parser = argparse.ArgumentParser( description='ecpi script: update schema json of eclairs pipeline and template xlsx parameter file') parser.add_argument('-m', '--master_pars', help='Full name of master parameters file. Else used default ecpi master_parameter_file.xlsx', type=argparse.FileType('r'), required=False) parser.add_argument('-l', '--log_level', choices=['debug', 'info', 'warning', 'error'], default='error') args = parser.parse_args() level_log = args.log_level log = log_ecpi.ECPILogger(level_log, root='ecpi_garage') log_ecpi.ECPILogger(level_log) log.message_start() if args.master_pars is not None: abs_path = os.path.abspath(args.master_pars.name) else: # TODO: include get_config_path() in ecpi.common.__init__ # abs_path = os.path.join(get_config_path(), "master_parameter_file.xlsx") abs_path = os.path.join(get_path_pipeline(), "config", "master_parameter_file.xlsx") print(abs_path) obj_conv = MasterParameterToEcpiSchemaJson(abs_path) obj_conv.create_all_file_schema_json() obj_tplt = TemplateFileByLevelExpertise(abs_path) obj_tplt.create_all_template() log.message_end()
if __name__ == '__main__': main()