mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
Hello yarn berry
This commit is contained in:
1 parent
04a4306895
commit
782f334a27
62 files changed
+448
-239
No files matched your search
@@ -1,7 +1,7 @@
|
||||
/* eslint-disable no-await-in-loop */
|
||||
/* eslint-disable import/no-dynamic-require */
|
||||
import { argv } from 'yargs';
|
||||
import { ObjectID } from 'mongodb';
|
||||
import cac from 'cac';
|
||||
import {
|
||||
lib, service, model, script,
|
||||
builtinLib, builtinModel, builtinScript,
|
||||
@@ -11,6 +11,7 @@ import { validate } from '../lib/validator';
|
||||
import * as bus from '../service/bus';
|
||||
import db from '../service/db';
|
||||
|
||||
const argv = cac().parse();
|
||||
const COMMENTS = /((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg;
|
||||
const ARR = /=>.*$/mg;
|
||||
function parseParameters(fn: Function) {
|
||||
@@ -29,7 +30,7 @@ async function runScript(name: string, arg: any) {
|
||||
}
|
||||
|
||||
async function cli() {
|
||||
const [, modelName, func, ...args] = argv._ as [string, string, string, ...any[]];
|
||||
const [, modelName, func, ...args] = argv.args as [string, string, string, ...any[]];
|
||||
if (modelName === 'script') {
|
||||
let arg: any;
|
||||
try {
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
import os from 'os';
|
||||
import path from 'path';
|
||||
import fs from 'fs-extra';
|
||||
import { argv } from 'yargs';
|
||||
import cac from 'cac';
|
||||
import { builtinModel } from './common';
|
||||
import { Entry } from '../loader';
|
||||
import { Logger } from '../logger';
|
||||
@@ -11,13 +11,14 @@ import options from '../options';
|
||||
import * as bus from '../service/bus';
|
||||
import db from '../service/db';
|
||||
|
||||
const argv = cac().parse();
|
||||
const logger = new Logger('entry/master');
|
||||
const tmpdir = path.resolve(os.tmpdir(), 'hydro');
|
||||
const lockfile = path.resolve(tmpdir, 'lock.json');
|
||||
|
||||
export async function load(call: Entry) {
|
||||
fs.ensureDirSync(tmpdir);
|
||||
if (fs.existsSync(lockfile) && !argv.ignorelock) {
|
||||
if (fs.existsSync(lockfile) && !argv.options.ignorelock) {
|
||||
try {
|
||||
const file = require(lockfile);
|
||||
process.kill(file.pid, 0);
|
||||
|
||||
@@ -6,11 +6,11 @@ import Koa, { Context } from 'koa';
|
||||
import Body from 'koa-body';
|
||||
import cache from 'koa-static-cache';
|
||||
import mongodb from 'mongodb';
|
||||
import { argv } from 'yargs';
|
||||
import cac from 'cac';
|
||||
import { Logger } from '../logger';
|
||||
|
||||
const logger = new Logger('setup');
|
||||
const listenPort = argv.port || 8888;
|
||||
const listenPort = cac().parse().options.port || 8888;
|
||||
|
||||
async function get(ctx: Context) {
|
||||
ctx.body = `<!DOCTYPE html>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* eslint-disable no-await-in-loop */
|
||||
/* eslint-disable import/no-dynamic-require */
|
||||
import { argv } from 'yargs';
|
||||
import cac from 'cac';
|
||||
import {
|
||||
locale, template, lib, service, model, handler, script, setting, uistatic,
|
||||
builtinLib, builtinScript, builtinHandler, builtinModel,
|
||||
@@ -11,32 +11,33 @@ import db from '../service/db';
|
||||
import { Logger } from '../logger';
|
||||
|
||||
const logger = new Logger('loader/worker');
|
||||
const detail = cac().parse().options.loaderDetail;
|
||||
|
||||
export async function load() {
|
||||
const pending = global.addons;
|
||||
const fail = [];
|
||||
const active = [];
|
||||
if (argv.loaderDetail) logger.info('start');
|
||||
if (detail) logger.info('start');
|
||||
require('../lib/i18n');
|
||||
require('../utils');
|
||||
require('../error');
|
||||
require('../options');
|
||||
if (argv.loaderDetail) logger.info('finish: options');
|
||||
if (detail) logger.info('finish: options');
|
||||
await Promise.all([
|
||||
locale(pending, fail),
|
||||
template(pending, fail),
|
||||
uistatic(pending, fail),
|
||||
]);
|
||||
if (argv.loaderDetail) logger.info('finish: locale/template/static');
|
||||
if (detail) logger.info('finish: locale/template/static');
|
||||
const opts = options();
|
||||
await db.start(opts);
|
||||
if (argv.loaderDetail) logger.info('finish: db.connect');
|
||||
if (detail) logger.info('finish: db.connect');
|
||||
const modelSystem = require('../model/system');
|
||||
await modelSystem.runConfig();
|
||||
if (argv.loaderDetail) logger.info('finish: config');
|
||||
if (detail) logger.info('finish: config');
|
||||
const storage = require('../service/storage');
|
||||
await storage.start();
|
||||
if (argv.loaderDetail) logger.info('finish: storage.connect');
|
||||
if (detail) logger.info('finish: storage.connect');
|
||||
for (const i of builtinLib) {
|
||||
let t;
|
||||
try {
|
||||
@@ -46,40 +47,40 @@ export async function load() {
|
||||
}
|
||||
require(t);
|
||||
}
|
||||
if (argv.loaderDetail) logger.info('finish: lib.builtin');
|
||||
if (detail) logger.info('finish: lib.builtin');
|
||||
await lib(pending, fail);
|
||||
if (argv.loaderDetail) logger.info('finish: lib.extra');
|
||||
if (detail) logger.info('finish: lib.extra');
|
||||
require('../service/gridfs');
|
||||
require('../service/monitor');
|
||||
if (argv.loaderDetail) logger.info('finish: gridfs/monitor');
|
||||
if (detail) logger.info('finish: gridfs/monitor');
|
||||
const server = require('../service/server');
|
||||
await server.prepare();
|
||||
if (argv.loaderDetail) logger.info('finish: server');
|
||||
if (detail) logger.info('finish: server');
|
||||
await service(pending, fail);
|
||||
if (argv.loaderDetail) logger.info('finish: service.extra');
|
||||
if (detail) logger.info('finish: service.extra');
|
||||
for (const i of builtinModel) require(`../model/${i}`);
|
||||
if (argv.loaderDetail) logger.info('finish: model.builtin');
|
||||
if (detail) logger.info('finish: model.builtin');
|
||||
for (const i of builtinHandler) require(`../handler/${i}`);
|
||||
if (argv.loaderDetail) logger.info('finish: handler.builtin');
|
||||
if (detail) logger.info('finish: handler.builtin');
|
||||
await model(pending, fail);
|
||||
if (argv.loaderDetail) logger.info('finish: model.extra');
|
||||
if (detail) logger.info('finish: model.extra');
|
||||
const modelSetting = require('../model/setting');
|
||||
await setting(pending, fail, modelSetting);
|
||||
if (argv.loaderDetail) logger.info('finish: setting');
|
||||
if (detail) logger.info('finish: setting');
|
||||
await handler(pending, fail);
|
||||
if (argv.loaderDetail) logger.info('finish: handler.extra');
|
||||
if (detail) logger.info('finish: handler.extra');
|
||||
for (const i in global.Hydro.handler) await global.Hydro.handler[i]();
|
||||
if (argv.loaderDetail) logger.info('finish: handler.apply');
|
||||
if (detail) logger.info('finish: handler.apply');
|
||||
const notfound = require('../handler/notfound');
|
||||
await notfound.apply();
|
||||
for (const i of builtinScript) require(`../script/${i}`);
|
||||
if (argv.loaderDetail) logger.info('finish: script.builtin');
|
||||
if (detail) logger.info('finish: script.builtin');
|
||||
await script(pending, fail, active);
|
||||
if (argv.loaderDetail) logger.info('finish: script.extra');
|
||||
if (detail) logger.info('finish: script.extra');
|
||||
await bus.serial('app/started');
|
||||
if (argv.loaderDetail) logger.info('finish: bus.serial(start)');
|
||||
if (detail) logger.info('finish: bus.serial(start)');
|
||||
await server.start();
|
||||
if (argv.loaderDetail) logger.info('finish: server.start');
|
||||
if (detail) logger.info('finish: server.start');
|
||||
setInterval(() => {
|
||||
process.send({ event: 'stat', count: global.Hydro.stat.reqCount });
|
||||
global.Hydro.stat.reqCount = 0;
|
||||
|
||||
Reference in new issue
Block a user