mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
完善设置
This commit is contained in:
1 parent
fc0d9873a2
commit
7edb29d7b8
43 files changed
+219
-184
No files matched your search
+12
-4
@@ -1,3 +1,4 @@
|
||||
/* eslint-disable no-await-in-loop */
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const zlib = require('zlib');
|
||||
@@ -5,6 +6,8 @@ const yaml = require('js-yaml');
|
||||
const { root, ignoreFailure, rmdir } = require('./utils');
|
||||
const template = require('./template');
|
||||
|
||||
const fsp = fs.promises;
|
||||
|
||||
function getFiles(folder) {
|
||||
const res = [];
|
||||
const files = fs.readdirSync(root(folder));
|
||||
@@ -48,11 +51,15 @@ async function build(type) {
|
||||
}
|
||||
const data = zlib.gzipSync(Buffer.from(yaml.safeDump(builtin)), { level: -1 });
|
||||
fs.writeFileSync(root('.build/module/builtin.hydro'), data);
|
||||
console.log('Build::Module');
|
||||
await require('./buildModule')(type);
|
||||
console.log('Build::Main');
|
||||
await require('./webpack')(type);
|
||||
const t = fs.readdirSync(root('.build/module'));
|
||||
for (const f of t) {
|
||||
if (fs.statSync(root(`.build/module/${f}`)).isDirectory()) rmdir(root(`.build/module/${f}`));
|
||||
if (fs.statSync(root(`.build/module/${f}`)).isDirectory()) {
|
||||
rmdir(root(`.build/module/${f}`));
|
||||
}
|
||||
}
|
||||
const modules = [
|
||||
'builtin', 'contest-rule-homework', 'judger', 'migrate-vijos', 'module-pastebin',
|
||||
@@ -61,15 +68,16 @@ async function build(type) {
|
||||
const j = {};
|
||||
for (const m of modules) {
|
||||
try {
|
||||
const d = fs.readFileSync(root(`.build/module/${m}.hydro`));
|
||||
const d = await fsp.readFile(root(`.build/module/${m}.hydro`));
|
||||
j[m] = d.toString('base64');
|
||||
} catch (e) {
|
||||
console.error(`Module pack failed: ${m}`);
|
||||
}
|
||||
}
|
||||
fs.writeFileSync(root('.build/module.json'), JSON.stringify(j));
|
||||
await fsp.writeFile(root('.build/module.json'), JSON.stringify(j));
|
||||
console.log('Build::Full');
|
||||
await require('./webpack')(type, '-full');
|
||||
// fs.unlinkSync(root('.build/module.json'));
|
||||
await fsp.unlink(root('.build/module.json'));
|
||||
}
|
||||
|
||||
module.exports = build;
|
||||
|
||||
Reference in new issue
Block a user