From 7e9ae801b9af2993f8e776230915c6fe0e3a62bb Mon Sep 17 00:00:00 2001 From: coderaiser Date: Thu, 23 Aug 2018 20:28:41 +0300 Subject: [PATCH] feature(cloudcmd) --config-path --- bin/cloudcmd.js | 3 +++ server/config.js | 7 ++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/bin/cloudcmd.js b/bin/cloudcmd.js index c285ae40..76b089be 100755 --- a/bin/cloudcmd.js +++ b/bin/cloudcmd.js @@ -38,6 +38,7 @@ const args = require('minimist')(argv.slice(2), { 'import-url', 'import-token', 'export-token', + 'config-path', ], boolean: [ 'auth', @@ -92,6 +93,7 @@ const args = require('minimist')(argv.slice(2), { 'sync-console-path': choose(env.bool('sync_console_path'), config('syncConsolePath')), 'config-dialog': choose(env.bool('config_dialog'), config('configDialog')), + 'config-path': env('config_path') || config('configPath'), 'terminal-path': env('terminal_path') || config('terminalPath'), 'one-file-panel': choose(env.bool('one_file_panel'), config('oneFilePanel')), 'confirm-copy': choose(env.bool('confirm_copy'), config('confirmCopy')), @@ -150,6 +152,7 @@ function main() { config('confirmMove', args['confirm-move']); config('oneFilePanel', args['one-file-panel']); config('configDialog', args['config-dialog']); + config('configPath', args['config-path']); config('keysPanel', args['keys-panel']); config('export', args.export); config('exportToken', args['export-token']); diff --git a/server/config.js b/server/config.js index e0f47406..9840b42e 100644 --- a/server/config.js +++ b/server/config.js @@ -23,7 +23,12 @@ const jju = require('jju'); const writejson = require('writejson'); const tryCatch = require('try-catch'); const criton = require('criton'); -const HOME = require('os').homedir(); + +const homeDir = require('os').homedir(); +const configPath = config('configPath') + .replace(/^~/, homeDir); + +const HOME = configPath || homeDir; const manageConfig = squad(traverse, cryptoPass); const save = promisify(_save);