|
- const fs = require("fs");
- const path = require("path");
- const redis = require("redis");
- const bench_path = path.resolve(__dirname, "..", "..");
-
- function get_conf() {
- // defaults
- var conf = {
- redis_async_broker_port: "redis://localhost:12311",
- socketio_port: 3000,
- };
-
- var read_config = function (file_path) {
- const full_path = path.resolve(bench_path, file_path);
-
- if (fs.existsSync(full_path)) {
- var bench_config = JSON.parse(fs.readFileSync(full_path));
- for (var key in bench_config) {
- if (bench_config[key]) {
- conf[key] = bench_config[key];
- }
- }
- }
- };
-
- // get ports from bench/config.json
- read_config("config.json");
- read_config("sites/common_site_config.json");
-
- // set default site
- if (process.env.FRAPPE_SITE) {
- conf.default_site = process.env.FRAPPE_SITE;
- }
- if (fs.existsSync("sites/currentsite.txt")) {
- conf.default_site = fs.readFileSync("sites/currentsite.txt").toString().trim();
- }
-
- return conf;
- }
-
- function get_redis_subscriber(kind = "redis_socketio", options = {}) {
- const conf = get_conf();
- const host = conf[kind] || conf.redis_async_broker_port;
- return redis.createClient({ url: host, ...options });
- }
-
- module.exports = {
- get_conf,
- get_redis_subscriber,
- };
|