UNPKG

sardines-compile-time-tools

Version:

sardines.compile-time-tools.js is part of the sardines.io project

99 lines (98 loc) 3.58 kB
#!/usr/bin/env node "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var sardines_core_1 = require("sardines-core"); var proc = require("process"); var compiler = require("./index"); var config_1 = require("../config"); var _a = sardines_core_1.utils.parseArgs(), params = _a.params, files = _a.files; var projectName = params['project'] ? params['project'] : ''; var sardinesConfig = null; try { var configFilePath = './sardines-config.json'; if (params['config']) { configFilePath = params['config']; } sardinesConfig = config_1.readSardinesConfigFile(configFilePath); } catch (e) { if (params['config']) console.error("ERROR when reading config file:", e); } if (params['verbose']) { console.log("processing files belong to project: " + projectName); } else { params.verbose = false; } if (params['print']) { params.print = true; } else { params.print = false; } if (params['only-validate']) { if (params.verbose) console.log("only to validate the files"); params.only_validate = true; } else { params.only_validate = false; } if (params['validate']) { if (params.verbose) console.log("validate the files and halt whenever encounter an error"); params.validate = true; } else { params.validate = false; } if (params['recompile']) { if (params.verbose) console.log("recompiling"); params.recompile = true; } else { params.recompile = false; } if (params['reverse'] || params['undo']) { if (params.verbose) console.log("undo previous compiled files"); params.reverse = true; } else { params.reverse = false; } if (params['gen-services']) { var paramValue = params['gen-services']; delete params['gen-services']; if (typeof paramValue === 'string') { if (params.verbose) console.log("going to generate service definition file at [" + paramValue + "]"); } else { paramValue = proc.cwd() + "/sardines-local-services.json"; if (params.verbose) console.log("going to generate service definition file at [" + paramValue + "]"); } params.gen_services = paramValue; } if (typeof params['application'] === 'string') { params.application = params['application']; } else if (sardinesConfig && sardinesConfig.application) { params.application = sardinesConfig.application; } else if (!params['reverse']) { console.error("application name is missing"); } if (params.application && params.verbose) { console.log("compiling service for application [" + params['application'] + "]"); } if (params.verbose) { console.log('args for compiler:', params); } if (params['help']) { console.log("sardines-compiler [--option]|[--option=value] <filepath|dir> <filepath|dir> ...\n --verbose: log everything\n --print: output compiled content on stdout\n --only-validate: validate the source code but donot compile\n --validate: compile the source code and halt when error is thrown out\n --recompile: compile the source code even though it has been compiled\n --reverse: undo the compile action\n --undo: same as --reverse\n --gen-services: generate service definition file, default file path is ./sardines_local_services.json.json\n --application: set application name while generating service definition files\n --config: set sardines config file path, default is: './sardines-config.json'\n "); } compiler.compile(params, files);