mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-17 09:36:08 +08:00
judge: fix langs config
This commit is contained in:
1 parent
aad53cf51e
commit
59b38130b6
2 files changed
+14
-6
No files matched your search
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@hydrooj/hydrojudge",
|
||||
"bin": "bin/hydrojudge.js",
|
||||
"version": "2.1.2",
|
||||
"version": "2.1.3",
|
||||
"main": "package.json",
|
||||
"author": "masnn",
|
||||
"dependencies": {
|
||||
|
||||
@@ -4,10 +4,10 @@ import { argv } from 'yargs';
|
||||
import os from 'os';
|
||||
import path from 'path';
|
||||
import fs from 'fs-extra';
|
||||
import yaml from 'js-yaml';
|
||||
import log from './log';
|
||||
|
||||
export let CONFIG_FILE = path.resolve(os.homedir(), '.config', 'hydro', 'judge.yaml');
|
||||
export let LANGS_FILE = path.resolve(os.homedir(), '.config', 'hydro', 'langs.yaml');
|
||||
export let CACHE_DIR = path.resolve(os.homedir(), '.cache', 'hydro', 'judge');
|
||||
export let FILES_DIR = path.resolve(os.homedir(), '.cache', 'hydro', 'files', 'judge');
|
||||
export let SYSTEM_MEMORY_LIMIT_MB = 1024;
|
||||
@@ -19,6 +19,8 @@ export let EXECUTION_HOST = 'http://localhost:5050';
|
||||
export let CONFIG = null;
|
||||
export let LANGS = null;
|
||||
|
||||
let LANGS_FILE = path.resolve(os.homedir(), '.config', 'hydro', 'langs.yaml');
|
||||
|
||||
if (fs.existsSync(path.resolve(process.cwd(), '.env'))) {
|
||||
const env = {};
|
||||
const f = fs.readFileSync('.env').toString();
|
||||
@@ -47,10 +49,16 @@ if (process.env.FILES_DIR || argv.files) {
|
||||
if (process.env.EXECUTION_HOST || argv.execute) {
|
||||
EXECUTION_HOST = path.resolve(process.env.EXECUTION_HOST || argv.execute as string);
|
||||
}
|
||||
if (!(fs.existsSync(LANGS_FILE) || global.Hydro)) {
|
||||
fs.ensureDirSync(path.dirname(LANGS_FILE));
|
||||
if (fs.existsSync(path.join(__dirname, '..', 'examples', 'langs.yaml'))) {
|
||||
if (!global.Hydro) {
|
||||
if (fs.existsSync(LANGS_FILE)) LANGS = yaml.safeLoad(fs.readFileSync(LANGS_FILE).toString());
|
||||
else {
|
||||
log.error('Language file not found, using default.');
|
||||
const file = path.join(path.dirname(require.resolve('@hydrooj/hydrojudge')), 'setting.yaml');
|
||||
const content = yaml.safeLoad(fs.readFileSync(file).toString()) as any;
|
||||
LANGS = yaml.safeLoad(content.langs.default) as any;
|
||||
}
|
||||
if (!(fs.existsSync(LANGS_FILE) || global.Hydro)) {
|
||||
fs.ensureDirSync(path.dirname(LANGS_FILE));
|
||||
LANGS_FILE = path.join(__dirname, '..', 'examples', 'langs.yaml');
|
||||
} else throw new Error('Language file not found');
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user