diff options
Diffstat (limited to 'src/server/start.js')
-rw-r--r-- | src/server/start.js | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/src/server/start.js b/src/server/start.js index 8a8711a78..34b2cb5fa 100644 --- a/src/server/start.js +++ b/src/server/start.js | |||
@@ -17,24 +17,25 @@ | |||
17 | */ | 17 | */ |
18 | const path = require('path'); | 18 | const path = require('path'); |
19 | const fs = require('fs-extra'); | 19 | const fs = require('fs-extra'); |
20 | // eslint-disable-next-line import/no-extraneous-dependencies | ||
21 | const { app } = require('electron'); | ||
22 | 20 | ||
23 | process.env.ENV_PATH = path.join(__dirname, 'env.ini'); | 21 | process.env.ENV_PATH = path.join(__dirname, 'env.ini'); |
24 | 22 | ||
25 | // Make sure local database exists | ||
26 | const dbPath = path.join(app.getPath('userData'), 'server.sqlite'); | ||
27 | if (!fs.existsSync(dbPath)) { | ||
28 | fs.copySync( | ||
29 | path.join(__dirname, 'database', 'template.sqlite'), | ||
30 | dbPath, | ||
31 | ); | ||
32 | } | ||
33 | |||
34 | const { Ignitor } = require('@adonisjs/ignitor'); | 23 | const { Ignitor } = require('@adonisjs/ignitor'); |
35 | const fold = require('@adonisjs/fold'); | 24 | const fold = require('@adonisjs/fold'); |
36 | 25 | ||
37 | new Ignitor(fold) | 26 | module.exports = (dbPath, port) => { |
38 | .appRoot(__dirname) | 27 | if (!fs.existsSync(dbPath)) { |
39 | .fireHttpServer() | 28 | fs.copySync( |
40 | .catch(console.error); // eslint-disable-line no-console | 29 | path.join(__dirname, 'database', 'template.sqlite'), |
30 | dbPath, | ||
31 | ); | ||
32 | } | ||
33 | |||
34 | process.env.DB_PATH = dbPath; | ||
35 | process.env.PORT = port; | ||
36 | |||
37 | new Ignitor(fold) | ||
38 | .appRoot(__dirname) | ||
39 | .fireHttpServer() | ||
40 | .catch(console.error); // eslint-disable-line no-console | ||
41 | }; | ||