core: allow homepage config injection

This commit is contained in:
undefined committed 2022-11-26 20:28:11 +08:00
1 parent 4f41c0ae56
commit a2ea3812df
5 files changed
+10 -15

No files matched your search

+1
View File
@@ -9,6 +9,7 @@ const compilerOptionsBase = {
module: 'commonjs',
esModuleInterop: true,
moduleResolution: 'node',
jsx: 'react',
sourceMap: false,
composite: true,
strictBindCallApply: true,
+1 -1
View File
@@ -9,7 +9,7 @@ if [ $EUID != 0 ]; then
fi
set -e
echo "Executing Hydro install script v3.0.0"
echo "Hydro includes anonymous system telemetry,
echo "Hydro includes system telemetry,
which helps developers figure out the most commonly used operating system and platform.
To disable this feature, checkout our sourcecode."
mkdir -p /data/db /data/file ~/.hydro
+1 -1
View File
@@ -114,7 +114,7 @@ export class HomeHandler extends Handler {
}
async get({ domainId }) {
const homepageConfig = system.get('hydrooj.homepage');
const homepageConfig = this.domain.homepage || system.get('hydrooj.homepage');
const info = yaml.load(homepageConfig) as any;
const contents = [];
for (const column of info) {
+3 -6
View File
@@ -453,18 +453,15 @@ export async function apply(pluginContext: Context) {
rewrite: (p) => p.replace('/fs', ''),
});
app.use(async (ctx, next) => {
for (const key in captureAllRoutes) {
if (ctx.path.startsWith(key)) return captureAllRoutes[key](ctx, next);
}
if (!ctx.path.startsWith('/fs/')) return await next();
if (ctx.request.search.toLowerCase().includes('x-amz-credential')) return await proxyMiddleware(ctx, next);
ctx.request.path = ctx.path = ctx.path.split('/fs')[1];
return await next();
});
app.use(Compress());
app.use(async (ctx, next) => {
for (const key in captureAllRoutes) {
if (ctx.path.startsWith(key)) return captureAllRoutes[key](ctx, next);
}
return next();
});
for (const addon of [...global.addons].reverse()) {
const dir = resolve(addon, 'public');
if (!fs.existsSync(dir)) continue;
+4 -7
View File
@@ -70,14 +70,11 @@ describe('App', () => {
}
after(() => {
const metrics = [];
for (const key in results) {
metrics.push({
name: `Benchmark - ${key} - Req/sec`,
const metrics = Object.entries(([k, v]) => ({
name: `Benchmark - ${k} - Req/sec`,
unit: 'Req/sec',
value: results[key].requests.average,
});
}
value: v.requests.average,
}));
writeFileSync('./benchmark.json', JSON.stringify(metrics, null, 2));
setTimeout(() => process.exit(0), 1000);
});