not-node 6.3.72 → 6.3.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +5 -1
- package/package.json +1 -1
- package/src/cluster/cluster.redis.js +1 -1
- package/src/domain.js +2 -2
- package/src/env.js +29 -2
- package/src/init/index.js +2 -2
- package/src/init/lib/db/index.js +2 -1
- package/src/init/lib/env.js +68 -29
- package/src/init/lib/rateLimiter.js +1 -1
- package/src/init/lib/routes.js +7 -3
- package/src/model/buildValidator.js +1 -1
- package/test/init/routes.js +4 -6
package/index.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @module not-node
|
|
3
3
|
*/
|
|
4
|
-
|
|
4
|
+
/** Environment variables */
|
|
5
5
|
module.exports.Env = require("./src/env.js");
|
|
6
|
+
/** getter/setter shortcuts */
|
|
7
|
+
module.exports.getEnv = module.exports.Env.get;
|
|
8
|
+
module.exports.setEnv = module.exports.Env.set;
|
|
9
|
+
|
|
6
10
|
/** Error module
|
|
7
11
|
* @type {not-node/Error}
|
|
8
12
|
*/
|
package/package.json
CHANGED
package/src/domain.js
CHANGED
|
@@ -466,7 +466,7 @@ class notDomain extends EventEmitter {
|
|
|
466
466
|
}
|
|
467
467
|
|
|
468
468
|
getEnv(key) {
|
|
469
|
-
return Env.
|
|
469
|
+
return Env.get(key);
|
|
470
470
|
}
|
|
471
471
|
|
|
472
472
|
/**
|
|
@@ -476,7 +476,7 @@ class notDomain extends EventEmitter {
|
|
|
476
476
|
* @return {notDomain} chainable
|
|
477
477
|
*/
|
|
478
478
|
static setEnv(key, val) {
|
|
479
|
-
Env.
|
|
479
|
+
Env.set(key, val);
|
|
480
480
|
return this;
|
|
481
481
|
}
|
|
482
482
|
|
package/src/env.js
CHANGED
|
@@ -6,11 +6,24 @@ const ENVS = {
|
|
|
6
6
|
|
|
7
7
|
module.exports = class notEnv {
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* Obsolete!
|
|
10
|
+
* Wrapper for 'get'
|
|
11
|
+
* @static
|
|
10
12
|
* @param {string} key name of var
|
|
11
13
|
* @return {object|undefined} value or undefined
|
|
12
14
|
*/
|
|
13
15
|
static getEnv(key) {
|
|
16
|
+
console.error("Obsolete: use Env.get instead!");
|
|
17
|
+
return this.get(key);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Returns application environment variable
|
|
22
|
+
* @static
|
|
23
|
+
* @param {string} key name of var
|
|
24
|
+
* @return {object|undefined} value or undefined
|
|
25
|
+
*/
|
|
26
|
+
static get(key) {
|
|
14
27
|
if (objHas(ENVS, key)) {
|
|
15
28
|
return ENVS[key];
|
|
16
29
|
} else {
|
|
@@ -19,12 +32,26 @@ module.exports = class notEnv {
|
|
|
19
32
|
}
|
|
20
33
|
|
|
21
34
|
/**
|
|
22
|
-
*
|
|
35
|
+
* Obsolete!
|
|
36
|
+
* Wrapper for 'set'
|
|
37
|
+
* @static
|
|
23
38
|
* @param {string} key name of var
|
|
24
39
|
* @param {object} val value
|
|
25
40
|
* @return {notEnv} chainable
|
|
26
41
|
*/
|
|
27
42
|
static setEnv(key, val) {
|
|
43
|
+
console.error("Obsolete: use Env.set instead!");
|
|
44
|
+
return this.set(key, val);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Setting application environment variable
|
|
49
|
+
* @static
|
|
50
|
+
* @param {string} key name of var
|
|
51
|
+
* @param {object} val value
|
|
52
|
+
* @return {notEnv} chainable
|
|
53
|
+
*/
|
|
54
|
+
static set(key, val) {
|
|
28
55
|
ENVS[key] = val;
|
|
29
56
|
return notEnv;
|
|
30
57
|
}
|
package/src/init/index.js
CHANGED
package/src/init/lib/db/index.js
CHANGED
|
@@ -28,7 +28,8 @@ module.exports = class InitDB {
|
|
|
28
28
|
* [db_driver_name_1]: options,
|
|
29
29
|
* [db_driver_name_2]: options,
|
|
30
30
|
* }
|
|
31
|
-
* to get driver
|
|
31
|
+
* to get driver
|
|
32
|
+
* require('not-node').getEnv(db_driver_name_2)
|
|
32
33
|
* require('not-node').getEnv('mongoose')
|
|
33
34
|
* require('not-node').getEnv('redis')
|
|
34
35
|
**/
|
package/src/init/lib/env.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const log = require("not-log")(module, "not-node//init//env");
|
|
2
2
|
const { tryDirAsync } = require("../../common");
|
|
3
|
+
const notEnv = require("../../env");
|
|
3
4
|
const {
|
|
4
5
|
DEFAULT_PATH_WS,
|
|
5
6
|
DEFAULT_PATH_MODULES,
|
|
@@ -9,6 +10,34 @@ const {
|
|
|
9
10
|
} = require("../../const");
|
|
10
11
|
|
|
11
12
|
module.exports = class InitENV {
|
|
13
|
+
static CONFIG_SET = [
|
|
14
|
+
{
|
|
15
|
+
from: "path:static",
|
|
16
|
+
to: "staticPath",
|
|
17
|
+
def: DEFAULT_PATH_STATIC,
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
from: "path:modules",
|
|
21
|
+
to: "modulesPath",
|
|
22
|
+
def: DEFAULT_PATH_MODULES,
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
from: "path:tmp",
|
|
26
|
+
to: "tmpPath",
|
|
27
|
+
def: DEFAULT_PATH_TMP,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
from: "path:dbDumps",
|
|
31
|
+
to: "dbDumpsPath",
|
|
32
|
+
def: DEFAULT_PATH_DB_DUMPS,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
from: "path:ws",
|
|
36
|
+
to: "wsPath",
|
|
37
|
+
def: DEFAULT_PATH_WS,
|
|
38
|
+
},
|
|
39
|
+
];
|
|
40
|
+
|
|
12
41
|
static getProxyPort(config) {
|
|
13
42
|
return parseInt(config.get("proxy:port") || config.get("port"));
|
|
14
43
|
}
|
|
@@ -41,46 +70,56 @@ module.exports = class InitENV {
|
|
|
41
70
|
}
|
|
42
71
|
}
|
|
43
72
|
|
|
73
|
+
static addToEnv(key, val) {
|
|
74
|
+
notEnv.set(key, val);
|
|
75
|
+
return val;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
static setObsoleteAndNew({ config, master, from, to, def }) {
|
|
79
|
+
config.set(
|
|
80
|
+
to,
|
|
81
|
+
InitENV.addToEnv(to, master.getAbsolutePath(config.get(from, def))),
|
|
82
|
+
`obsolete: use notEnv.get('${to}') instead`
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
static initFromTemplate({ config, master }) {
|
|
87
|
+
InitENV.CONFIG_SET.forEach((item) => {
|
|
88
|
+
InitENV.setObsoleteAndNew({
|
|
89
|
+
config,
|
|
90
|
+
master,
|
|
91
|
+
...item,
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
|
|
44
96
|
async run({ config, options, master, emit }) {
|
|
45
97
|
log?.info("Setting up server environment variables...");
|
|
46
98
|
await emit("env.pre", { config, options, master });
|
|
99
|
+
|
|
100
|
+
InitENV.initFromTemplate({ config, master });
|
|
101
|
+
|
|
47
102
|
config.set(
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
)
|
|
52
|
-
);
|
|
53
|
-
config.set(
|
|
54
|
-
"modulesPath",
|
|
55
|
-
master.getAbsolutePath(
|
|
56
|
-
config.get("path:modules", DEFAULT_PATH_MODULES)
|
|
57
|
-
)
|
|
103
|
+
"appPath",
|
|
104
|
+
InitENV.addToEnv("appPath", options.pathToApp),
|
|
105
|
+
"obsolete: use notEnv.get('appPath')"
|
|
58
106
|
);
|
|
59
107
|
|
|
60
108
|
config.set(
|
|
61
|
-
"
|
|
62
|
-
|
|
109
|
+
"npmPath",
|
|
110
|
+
InitENV.addToEnv("npmPath", options.pathToNPM),
|
|
111
|
+
"obsolete: use notEnv.get('npmPath')"
|
|
63
112
|
);
|
|
64
113
|
|
|
65
114
|
config.set(
|
|
66
|
-
"
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
115
|
+
"fullServerName",
|
|
116
|
+
InitENV.addToEnv(
|
|
117
|
+
"fullServerName",
|
|
118
|
+
InitENV.getFullServerName(config)
|
|
119
|
+
),
|
|
120
|
+
"obsolete: use notEnv.get('fullServerName')"
|
|
70
121
|
);
|
|
71
|
-
|
|
72
|
-
config.set("npmPath", options.pathToNPM);
|
|
73
|
-
config.set("fullServerName", InitENV.getFullServerName(config));
|
|
74
|
-
if (config.get("path:ws")) {
|
|
75
|
-
log?.log(
|
|
76
|
-
"wsPath",
|
|
77
|
-
master.getAbsolutePath(config.get("path:ws", DEFAULT_PATH_WS))
|
|
78
|
-
);
|
|
79
|
-
config.set(
|
|
80
|
-
"wsPath",
|
|
81
|
-
master.getAbsolutePath(config.get("path:ws", DEFAULT_PATH_WS))
|
|
82
|
-
);
|
|
83
|
-
}
|
|
122
|
+
|
|
84
123
|
await InitENV.checkPaths(master, config);
|
|
85
124
|
await emit("env.post", { config, options, master });
|
|
86
125
|
}
|
package/src/init/lib/routes.js
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
const serveStatic = require("serve-static");
|
|
4
4
|
const log = require("not-log")(module, "not-node//init//routes");
|
|
5
|
-
const {
|
|
5
|
+
const {
|
|
6
|
+
notError,
|
|
7
|
+
notValidationError,
|
|
8
|
+
notRequestError,
|
|
9
|
+
} = require("not-error/src/index.cjs");
|
|
6
10
|
|
|
7
11
|
module.exports = class InitRoutes {
|
|
8
12
|
static finalError({ master }) {
|
|
@@ -57,7 +61,7 @@ module.exports = class InitRoutes {
|
|
|
57
61
|
};
|
|
58
62
|
}
|
|
59
63
|
|
|
60
|
-
async run({ master,
|
|
64
|
+
async run({ master, options }) {
|
|
61
65
|
log?.info("Setting up routes...");
|
|
62
66
|
//pages rendering
|
|
63
67
|
await master.getApp().execInModules("registerPagesRoutes", master);
|
|
@@ -65,7 +69,7 @@ module.exports = class InitRoutes {
|
|
|
65
69
|
master.getApp().expose(master.getServer());
|
|
66
70
|
//user defined pages
|
|
67
71
|
require(options.routesPath)(master.getServer(), master.getApp());
|
|
68
|
-
master.getServer().use(serveStatic(
|
|
72
|
+
master.getServer().use(serveStatic(master.getEnv("staticPath")));
|
|
69
73
|
master.getServer().use(options.indexRoute);
|
|
70
74
|
master.getServer().use(
|
|
71
75
|
InitRoutes.finalError({
|
|
@@ -11,7 +11,7 @@ function extractValidationEnvGetter(options) {
|
|
|
11
11
|
) {
|
|
12
12
|
return options.validationEnv;
|
|
13
13
|
} else {
|
|
14
|
-
const globalValidationEnvGetter = notEnv.
|
|
14
|
+
const globalValidationEnvGetter = notEnv.get("validationEnv");
|
|
15
15
|
if (globalValidationEnvGetter && isFunc(globalValidationEnvGetter)) {
|
|
16
16
|
return globalValidationEnvGetter;
|
|
17
17
|
} else {
|
package/test/init/routes.js
CHANGED
|
@@ -182,16 +182,14 @@ module.exports = ({ expect }) => {
|
|
|
182
182
|
getServer() {
|
|
183
183
|
return fakeServer;
|
|
184
184
|
},
|
|
185
|
+
getEnv(str) {
|
|
186
|
+
return str + "__fake";
|
|
187
|
+
},
|
|
185
188
|
getApp() {
|
|
186
189
|
return fakeApp;
|
|
187
190
|
},
|
|
188
191
|
};
|
|
189
|
-
|
|
190
|
-
get(str) {
|
|
191
|
-
return str + "__fake";
|
|
192
|
-
},
|
|
193
|
-
};
|
|
194
|
-
await new InitRoutes().run({ master, config, options });
|
|
192
|
+
await new InitRoutes().run({ master, options });
|
|
195
193
|
});
|
|
196
194
|
});
|
|
197
195
|
});
|