import program from './commander'; function logStartupOptions(options) { for (const key in options) { let value = options[key]; if (key == 'masterKey') { value = '***REDACTED***'; } if (key == 'push' && options.verbose != true) { value = '***REDACTED***'; } if (typeof value === 'object') { try { value = JSON.stringify(value); } catch (e) { if (value && value.constructor && value.constructor.name) { value = value.constructor.name; } } } /* eslint-disable no-console */ console.log(`${key}: ${value}`); /* eslint-enable no-console */ } } export default function({ definitions, help, usage, start }) { program.loadDefinitions(definitions); if (usage) { program.usage(usage); } if (help) { program.on('--help', help); } program.parse(process.argv, process.env); const options = program.getOptions(); start(program, options, function() { logStartupOptions(options); }); }