in src/NodeJs/ConfigurationProcessor.ts [11:51]
export function ProcesCommandLine(): ICommandLineOptions {
const parseOptions: minimist.Opts = {
boolean: true,
alias: {
"help": "h",
"mode": "m",
"config": "c",
"sourcetoken": "s",
"targettoken": "t"
}
}
const parsedArgs = minimist(process.argv, parseOptions);
if (parsedArgs["h"]) {
logger.logInfo(`Usage: process-migrator [--mode=<migrate(default)/import/export> [--config=<your-configuration-file-path>]`);
process.exit(0);
}
const configFileName = parsedArgs[paramConfig] || normalize(defaultConfigurationFilename);
const userSpecifiedMode = parsedArgs[paramMode] as string;
let mode;
if (userSpecifiedMode) {
switch (userSpecifiedMode.toLocaleLowerCase()) {
case Modes[Modes.export]: mode = Modes.export; break;
case Modes[Modes.import]: mode = Modes.import; break;
case Modes[Modes.migrate]: mode = Modes.migrate; break;
default: logger.logError(`Invalid mode argument, allowed values are 'import', 'export' or 'migrate'.`); process.exit(1);
}
} else {
mode = Modes.migrate;
}
const ret = {};
ret[paramMode] = mode;
ret[paramConfig] = configFileName;
ret[paramSourceToken] = parsedArgs[paramSourceToken];
ret[paramTargetToken] = parsedArgs[paramTargetToken];
return <ICommandLineOptions>ret;
}