Skip to content
Snippets Groups Projects
Commit b6ef2fcb authored by syuilo's avatar syuilo
Browse files

#31

parent 09003362
No related branches found
No related tags found
No related merge requests found
......@@ -36,9 +36,9 @@ if (!fs.existsSync('./.config/config.yml')) {
process.exit();
}
(global as any).MISSKEY_CONFIG_PATH = '.config/config.yml';
import { IConfig } from './src/config';
const config = eval(require('typescript').transpile(require('fs').readFileSync('./src/config.ts').toString()))
('.config/config.yml') as IConfig;
const config = eval(require('typescript').transpile(require('fs').readFileSync('./src/config.ts').toString())) as IConfig;
const tsProject = ts.createProject('tsconfig.json');
......
......@@ -62,12 +62,10 @@ interface Mixin {
export type IConfig = ISource & Mixin;
/**
* 設定を取得します
* @param {string} path 設定ファイルのパス
* @return {IConfig} 設定
*/
export default (path: string) => {
export default 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 mixin: Mixin = {} as Mixin;
......@@ -90,14 +88,14 @@ export default (path: string) => {
mixin.dev_url = `${mixin.scheme}://dev.${mixin.host}`;
mixin.drive_url = `${mixin.secondary_scheme}://file.${mixin.secondary_host}`;
return Object.assign(config || {}, mixin) as IConfig;
};
return Object.assign(config, mixin);
}
function normalizeUrl(url: string): string {
function normalizeUrl(url: string) {
return url[url.length - 1] === '/' ? url.substr(0, url.length - 1) : url;
}
function urlError(url: string): void {
function urlError(url: string) {
console.error(`「${url}」は、正しいURLではありません。先頭に http:// または https:// をつけ忘れてないかなど確認してください。`);
process.exit();
}
import * as mongodb from 'mongodb';
import { IConfig } from './config';
declare var config: IConfig;
declare module NodeJS {
interface Global {
config: IConfig;
db: mongodb.Db;
}
}
......@@ -8,6 +8,8 @@ import * as https from 'https';
import * as express from 'express';
import vhost = require('vhost');
import config from './config';
/**
* Init app
*/
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment