From 1c26f25654073cb4adc5ac54dd8b315f49d44a3c Mon Sep 17 00:00:00 2001 From: undefined Date: Wed, 1 Dec 2021 16:13:40 +0800 Subject: [PATCH] core: restore env --- packages/hydrooj/bin/hydrooj.js | 5 ++++- packages/hydrooj/package.json | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/hydrooj/bin/hydrooj.js b/packages/hydrooj/bin/hydrooj.js index 1414e3976..46e6c6e5b 100755 --- a/packages/hydrooj/bin/hydrooj.js +++ b/packages/hydrooj/bin/hydrooj.js @@ -85,7 +85,7 @@ if (argv.args[0] === 'backup') { const dbConfig = fs.readFileSync(path.resolve(hydroPath, 'config.json'), 'utf-8'); const url = buildUrl(JSON.parse(dbConfig)); const dir = `${os.tmpdir()}/${Math.random().toString(36).substring(2)}`; - child.spawnSync('mongodump', [url, `--out=${dir}`], { stdio: 'inherit' }); + child.spawnSync('mongodump', [url, `--out=${dir}/dump`], { stdio: 'inherit' }); const env = `${os.homedir()}/.hydro/env`; if (fs.existsSync(env)) fs.copySync(env, `${dir}/env`); const target = `${process.cwd()}/backup-${new Date().toISOString()}.zip`; @@ -112,6 +112,9 @@ if (argv.args[0] === 'restore') { child.spawnSync('rm', ['-rf', '/data/file/**'], { stdio: 'inherit' }); child.spawnSync('mv', ['-f', `${dir}/file/**`, '/data/file'], { stdio: 'inherit' }); } + if (fs.existsSync(`${dir}/env`)) { + fs.copySync(`${dir}/env`, `${os.homedir()}/.hydro/env`, { overwrite: true }); + } fs.removeSync(dir); return; } diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index afb7417e8..54e1a6db7 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "3.1.45", + "version": "3.1.46", "bin": "bin/hydrooj.js", "main": "src/loader", "module": "src/loader",