-
Notifications
You must be signed in to change notification settings - Fork 63
/
M00002.js
47 lines (43 loc) · 1.13 KB
/
M00002.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import fs from 'fs';
const configJsonPath = process.env.CONFIG_MOUNT_POINT;
import { checkTruthy } from '../lib/validation';
exports.up = function (knex) {
return new Promise((resolve) => {
if (!configJsonPath) {
console.log(
'Unable to locate config.json! Things may fail unexpectedly!',
);
return resolve(false);
}
fs.readFile(configJsonPath, (err, data) => {
if (err) {
console.log(
'Failed to read config.json! Things may fail unexpectedly!',
);
return resolve(false);
}
try {
const parsed = JSON.parse(data.toString());
if (parsed.localMode != null) {
return resolve(checkTruthy(parsed.localMode));
}
return resolve(false);
} catch {
console.log(
'Failed to parse config.json! Things may fail unexpectedly!',
);
return resolve(false);
}
});
}).then((localMode) => {
// We can be sure that this does not already exist in the db because of the previous
// migration
return knex('config').insert({
key: 'localMode',
value: localMode.toString(),
});
});
};
exports.down = function () {
return Promise.reject(new Error('Not Implemented'));
};