@nest-boot/bullmq 7.3.1 → 7.3.2
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/dist/bullmq.module.d.ts +1 -1
- package/dist/bullmq.module.js +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/load-config-from-env.util.js +10 -17
- package/dist/utils/load-config-from-env.util.js.map +1 -1
- package/dist/utils/load-config-from-env.util.spec.js +12 -23
- package/dist/utils/load-config-from-env.util.spec.js.map +1 -1
- package/package.json +5 -5
|
@@ -1,33 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.loadConfigFromEnv = loadConfigFromEnv;
|
|
4
|
+
function normalizeHostname(hostname) {
|
|
5
|
+
if (hostname.startsWith("[") && hostname.endsWith("]")) {
|
|
6
|
+
return hostname.slice(1, -1);
|
|
7
|
+
}
|
|
8
|
+
return hostname;
|
|
9
|
+
}
|
|
4
10
|
function loadConfigFromEnv() {
|
|
5
11
|
if (process.env.REDIS_URL) {
|
|
6
12
|
const url = new URL(process.env.REDIS_URL);
|
|
7
13
|
const port = url.port;
|
|
8
14
|
const database = url.pathname.split("/")[1];
|
|
9
15
|
return {
|
|
10
|
-
host: url.hostname,
|
|
16
|
+
host: normalizeHostname(url.hostname),
|
|
11
17
|
port: port ? +port : undefined,
|
|
12
18
|
db: database ? +database : undefined,
|
|
13
|
-
username: url.username,
|
|
14
|
-
password: url.password,
|
|
19
|
+
username: decodeURIComponent(url.username),
|
|
20
|
+
password: decodeURIComponent(url.password),
|
|
15
21
|
...(url.protocol === "rediss:" ? { tls: {} } : {}),
|
|
16
22
|
};
|
|
17
23
|
}
|
|
18
|
-
|
|
19
|
-
const port = process.env.REDIS_PORT;
|
|
20
|
-
const database = process.env.REDIS_DB ?? process.env.REDIS_DATABASE;
|
|
21
|
-
const username = process.env.REDIS_USER ?? process.env.REDIS_USERNAME;
|
|
22
|
-
const password = process.env.REDIS_PASS ?? process.env.REDIS_PASSWORD;
|
|
23
|
-
const tls = !!process.env.REDIS_TLS;
|
|
24
|
-
return {
|
|
25
|
-
host,
|
|
26
|
-
...(port ? { port: +port } : {}),
|
|
27
|
-
...(database ? { db: +database } : {}),
|
|
28
|
-
username,
|
|
29
|
-
password,
|
|
30
|
-
...(tls ? { tls: {} } : {}),
|
|
31
|
-
};
|
|
24
|
+
return {};
|
|
32
25
|
}
|
|
33
26
|
//# sourceMappingURL=load-config-from-env.util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-config-from-env.util.js","sourceRoot":"","sources":["../../src/utils/load-config-from-env.util.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"load-config-from-env.util.js","sourceRoot":"","sources":["../../src/utils/load-config-from-env.util.ts"],"names":[],"mappings":";;AAUA,8CAiBC;AAzBD,SAAS,iBAAiB,CAAC,QAAgB;IACzC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAgB,iBAAiB;IAC/B,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,OAAO;YACL,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;YACrC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YAC9B,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACpC,QAAQ,EAAE,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAC1C,QAAQ,EAAE,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC;YAC1C,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnD,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -4,20 +4,22 @@ const load_config_from_env_util_1 = require("./load-config-from-env.util");
|
|
|
4
4
|
const ORIGINAL_ENV = process.env;
|
|
5
5
|
describe("loadConfigFromEnv", () => {
|
|
6
6
|
beforeEach(() => {
|
|
7
|
-
process.env =
|
|
7
|
+
process.env = { ...ORIGINAL_ENV };
|
|
8
|
+
delete process.env.REDIS_URL;
|
|
8
9
|
});
|
|
9
10
|
afterAll(() => {
|
|
10
11
|
process.env = ORIGINAL_ENV;
|
|
11
12
|
});
|
|
12
13
|
it("should load Redis config from URL", () => {
|
|
13
|
-
process.env.REDIS_URL =
|
|
14
|
+
process.env.REDIS_URL =
|
|
15
|
+
"rediss://user%40example.com:p%40ss%2Fword@redis.local:6380/2";
|
|
14
16
|
expect((0, load_config_from_env_util_1.loadConfigFromEnv)()).toEqual({
|
|
15
17
|
db: 2,
|
|
16
18
|
host: "redis.local",
|
|
17
|
-
password: "
|
|
19
|
+
password: "p@ss/word",
|
|
18
20
|
port: 6380,
|
|
19
21
|
tls: {},
|
|
20
|
-
username: "user",
|
|
22
|
+
username: "user@example.com",
|
|
21
23
|
});
|
|
22
24
|
});
|
|
23
25
|
it("should omit optional URL config when Redis URL does not include it", () => {
|
|
@@ -30,28 +32,15 @@ describe("loadConfigFromEnv", () => {
|
|
|
30
32
|
username: "",
|
|
31
33
|
});
|
|
32
34
|
});
|
|
33
|
-
it("should
|
|
34
|
-
process.env.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
process.env.REDIS_USERNAME = "user";
|
|
38
|
-
process.env.REDIS_PASSWORD = "pass";
|
|
39
|
-
process.env.REDIS_TLS = "true";
|
|
40
|
-
expect((0, load_config_from_env_util_1.loadConfigFromEnv)()).toEqual({
|
|
41
|
-
db: 3,
|
|
42
|
-
host: "redis.local",
|
|
43
|
-
password: "pass",
|
|
35
|
+
it("should strip brackets from an IPv6 URL hostname", () => {
|
|
36
|
+
process.env.REDIS_URL = "redis://[2001:db8::1]:6379/0";
|
|
37
|
+
expect((0, load_config_from_env_util_1.loadConfigFromEnv)()).toMatchObject({
|
|
38
|
+
host: "2001:db8::1",
|
|
44
39
|
port: 6379,
|
|
45
|
-
tls: {},
|
|
46
|
-
username: "user",
|
|
47
40
|
});
|
|
48
41
|
});
|
|
49
|
-
it("should
|
|
50
|
-
expect((0, load_config_from_env_util_1.loadConfigFromEnv)()).toEqual({
|
|
51
|
-
host: undefined,
|
|
52
|
-
password: undefined,
|
|
53
|
-
username: undefined,
|
|
54
|
-
});
|
|
42
|
+
it("should return empty config when REDIS_URL is absent", () => {
|
|
43
|
+
expect((0, load_config_from_env_util_1.loadConfigFromEnv)()).toEqual({});
|
|
55
44
|
});
|
|
56
45
|
});
|
|
57
46
|
//# sourceMappingURL=load-config-from-env.util.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-config-from-env.util.spec.js","sourceRoot":"","sources":["../../src/utils/load-config-from-env.util.spec.ts"],"names":[],"mappings":";;AAAA,2EAAgE;AAEhE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;AAEjC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,CAAC,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"load-config-from-env.util.spec.js","sourceRoot":"","sources":["../../src/utils/load-config-from-env.util.spec.ts"],"names":[],"mappings":";;AAAA,2EAAgE;AAEhE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;AAEjC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,GAAG,EAAE;QACZ,OAAO,CAAC,GAAG,GAAG,YAAY,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,OAAO,CAAC,GAAG,CAAC,SAAS;YACnB,8DAA8D,CAAC;QAEjE,MAAM,CAAC,IAAA,6CAAiB,GAAE,CAAC,CAAC,OAAO,CAAC;YAClC,EAAE,EAAE,CAAC;YACL,IAAI,EAAE,aAAa;YACnB,QAAQ,EAAE,WAAW;YACrB,IAAI,EAAE,IAAI;YACV,GAAG,EAAE,EAAE;YACP,QAAQ,EAAE,kBAAkB;SAC7B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,qBAAqB,CAAC;QAE9C,MAAM,CAAC,IAAA,6CAAiB,GAAE,CAAC,CAAC,OAAO,CAAC;YAClC,EAAE,EAAE,SAAS;YACb,IAAI,EAAE,aAAa;YACnB,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,EAAE;SACb,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,8BAA8B,CAAC;QAEvD,MAAM,CAAC,IAAA,6CAAiB,GAAE,CAAC,CAAC,aAAa,CAAC;YACxC,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,CAAC,IAAA,6CAAiB,GAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nest-boot/bullmq",
|
|
3
|
-
"version": "7.3.
|
|
3
|
+
"version": "7.3.2",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/nest-boot/nest-boot.git",
|
|
@@ -38,10 +38,10 @@
|
|
|
38
38
|
"rxjs": "^7.8.2",
|
|
39
39
|
"ts-jest": "^29.4.4",
|
|
40
40
|
"typescript": "^5.9.3",
|
|
41
|
-
"@nest-boot/eslint-config": "^7.3.
|
|
42
|
-
"@nest-boot/
|
|
43
|
-
"@nest-boot/
|
|
44
|
-
"@nest-boot/
|
|
41
|
+
"@nest-boot/eslint-config": "^7.3.2",
|
|
42
|
+
"@nest-boot/eslint-plugin": "^7.2.2",
|
|
43
|
+
"@nest-boot/request-context": "^7.7.2",
|
|
44
|
+
"@nest-boot/tsconfig": "^7.3.2"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"@nest-boot/request-context": "^7.4.3",
|