This commit is contained in:
syuilo 2017-01-17 08:19:34 +09:00
parent b6ef2fcb04
commit 33b6c232c9
5 changed files with 16 additions and 12 deletions

View File

@ -38,7 +38,7 @@ if (!fs.existsSync('./.config/config.yml')) {
(global as any).MISSKEY_CONFIG_PATH = '.config/config.yml'; (global as any).MISSKEY_CONFIG_PATH = '.config/config.yml';
import { IConfig } from './src/config'; import { IConfig } from './src/config';
const config = eval(require('typescript').transpile(require('fs').readFileSync('./src/config.ts').toString())) as IConfig; const config = eval(require('typescript').transpile(require('fs').readFileSync('./src/config.ts').toString()))() as IConfig;
const tsProject = ts.createProject('tsconfig.json'); const tsProject = ts.createProject('tsconfig.json');

3
src/conf.ts Normal file
View File

@ -0,0 +1,3 @@
import load from './config';
export default load();

View File

@ -6,6 +6,8 @@ import * as fs from 'fs';
import * as yaml from 'js-yaml'; import * as yaml from 'js-yaml';
import * as isUrl from 'is-url'; import * as isUrl from 'is-url';
export const path = (global as any).MISSKEY_CONFIG_PATH ? (global as any).MISSKEY_CONFIG_PATH : `${__dirname}/../.config/config.yml`;
/** /**
* *
*/ */
@ -62,10 +64,7 @@ interface Mixin {
export type IConfig = ISource & Mixin; export type IConfig = ISource & Mixin;
export default load(); export default function load() {
function load() {
const path = (global as any).MISSKEY_CONFIG_PATH ? (global as any).MISSKEY_CONFIG_PATH : `${__dirname}/../.config/config.yml`;
const config = yaml.safeLoad(fs.readFileSync(path, 'utf8')) as ISource; const config = yaml.safeLoad(fs.readFileSync(path, 'utf8')) as ISource;
const mixin: Mixin = {} as Mixin; const mixin: Mixin = {} as Mixin;

View File

@ -21,12 +21,13 @@ import EnvironmentInfo from './utils/environmentInfo';
import MachineInfo from './utils/machineInfo'; import MachineInfo from './utils/machineInfo';
import DependencyInfo from './utils/dependencyInfo'; import DependencyInfo from './utils/dependencyInfo';
import { path as configPath } from './config';
import loadConfig from './config';
// Init babel // Init babel
require('babel-core/register'); require('babel-core/register');
require('babel-polyfill'); require('babel-polyfill');
global.config = require('./config').default(`${__dirname}/../.config/config.yml`);
enum InitResult { enum InitResult {
Success, Success,
Warn, Warn,
@ -76,6 +77,8 @@ async function masterMain(): Promise<void> {
return; return;
} }
const config = loadConfig();
spawnWorkers(() => { spawnWorkers(() => {
Logger.info(chalk.bold.green(`Now listening on port ${config.port}`)); Logger.info(chalk.bold.green(`Now listening on port ${config.port}`));
@ -103,9 +106,6 @@ async function masterMain(): Promise<void> {
* Init worker proccess * Init worker proccess
*/ */
function workerMain(): void { function workerMain(): void {
// Register config
global.config = config;
// Init mongo // Init mongo
initdb().then(db => { initdb().then(db => {
global.db = db; global.db = db;
@ -134,11 +134,13 @@ async function init(): Promise<InitResult> {
new DependencyInfo().showAll(); new DependencyInfo().showAll();
let configLogger = new Logger('Config'); let configLogger = new Logger('Config');
if (!fs.existsSync(`${__dirname}/../.config/config.yml`)) { if (!fs.existsSync(configPath)) {
configLogger.error('Configuration not found'); configLogger.error('Configuration not found');
return InitResult.Failure; return InitResult.Failure;
} }
const config = loadConfig();
configLogger.info('Successfully loaded'); configLogger.info('Successfully loaded');
configLogger.info(`maintainer: ${config.maintainer}`); configLogger.info(`maintainer: ${config.maintainer}`);

View File

@ -8,7 +8,7 @@ import * as https from 'https';
import * as express from 'express'; import * as express from 'express';
import vhost = require('vhost'); import vhost = require('vhost');
import config from './config'; import config from './conf';
/** /**
* Init app * Init app