-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.ts
More file actions
88 lines (82 loc) · 2.21 KB
/
Copy pathconfig.ts
File metadata and controls
88 lines (82 loc) · 2.21 KB
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
import { createRequire } from 'node:module';
import fs from 'node:fs';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
import {
CONFIG_DEBUG,
CONFIG_MECHANISMS,
CONFIG_SECURITY_PROTOCOL,
CONFIG_TRUE_FALSE,
} from '../src/rdkafka/interfaces.js';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const require = createRequire(import.meta.url);
let localConfig: Record<string, any> = {};
try {
fs.accessSync(path.join(__dirname, 'config.local.ts'), fs.constants.F_OK);
localConfig = require('./config.local');
} catch (e) {
console.error(e);
}
const config = {
mns: {
default: {
connection: {
accountId: 'your_account_id',
region: 'hangzhou',
keyId: 'your_key_id',
keySecret: 'your_key_secret',
networkType: '',
},
defaultTopicName: 'your_topic_name',
defaultQueueName: 'your_queue_name',
},
another: {
connection: {
accountId: 'your_account_id',
region: 'hangzhou',
keyId: 'your_key_id',
keySecret: 'your_key_secret',
networkType: '',
},
defaultTopicName: 'your_topic_name',
defaultQueueName: 'your_queue_name',
},
},
kafka: {
default: {
connection: {
debug: CONFIG_DEBUG.all,
'api.version.request': CONFIG_TRUE_FALSE.true,
'metadata.broker.list': ['kafka-cn-internet.aliyun.com:8080'],
'security.protocol': CONFIG_SECURITY_PROTOCOL.sasl_ssl,
'ssl.ca.location': './ca-cert',
'sasl.mechanisms': CONFIG_MECHANISMS.PLAIN,
'sasl.username': 'your_username',
'sasl.password': 'your_password',
},
producer: {
dr_cb: true,
dr_msg_cb: true,
},
consumer: {
'group.id': 'your_group_id',
},
defaultQueueName: 'your_topic',
},
},
nats: {
default: {
connection: {
servers: 'localhost:4222',
},
stream: 'your_stream',
consumer: 'your_consumer',
defaultQueueName: 'your_queue',
defaultTopicName: 'your_topic',
},
},
};
const finalConfig = _.merge({}, config, localConfig);
console.log('Loaded config: %j', finalConfig);
module.exports = finalConfig;