UNPKG

1 kBJavaScriptView Raw
1'use strict';
2
3const AuthServer = require('../app');
4const co = require('co');
5const resolve = require('path').resolve;
6const existsSync = require('fs').existsSync;
7
8module.exports = function(options) {
9 let configPath = options.config || 'config.js';
10 let port = options.port || 3000;
11 let server;
12
13 if (existsSync(configPath)) {
14 server = AuthServer(configPath);
15 } else {
16 server = AuthServer();
17 }
18
19 server.listen(port);
20
21 console.log('Running site at: http://127.0.0.1:' + port);
22
23 co(function*() {
24 let orm = server.orm.database();
25
26 if (options.sync) {
27 yield orm.sync({
28 force: true
29 });
30
31 console.log('sync done.');
32 }
33
34 if (options.data && existsSync(options.data)) {
35 let data = require(resolve(options.data));
36 let users = data.users || [];
37
38 for (let user of users) {
39 yield orm.User.add(user);
40 }
41
42 console.log('load data done.');
43 }
44 }).catch(function(err) {
45 console.log(err.stack || err);
46 });
47};