merging in Peter Cellik's changes to allow NodeBB to work with a passworded Redis store. Fixes #11

v1.18.x
Julian Lam 12 years ago
parent 0d954b24dc
commit d0e5938788

@ -110,56 +110,59 @@ fs.readFile(path.join(__dirname, 'config.json'), function(err, data) {
ask('Will you be using a port number to access NodeBB? (y)', function(use_port) { ask('Will you be using a port number to access NodeBB? (y)', function(use_port) {
ask('... the host IP or address of your Redis instance? (127.0.0.1)', function(redis_host) { ask('... the host IP or address of your Redis instance? (127.0.0.1)', function(redis_host) {
ask('... the host port of your Redis instance? (6379)', function(redis_port) { ask('... the host port of your Redis instance? (6379)', function(redis_port) {
ask('... your NodeBB secret? (keyboard mash for a bit here)', function(secret) { ask('... the password of your Redis database? (no password)', function(redis_password) {
if (!base_url) base_url = 'http://localhost'; ask('... your NodeBB secret? (keyboard mash for a bit here)', function(secret) {
if (!port) port = 4567; if (!base_url) base_url = 'http://localhost';
if (!use_port) use_port = true; else use_port = (use_port === 'y' ? true : false); if (!port) port = 4567;
if (!redis_host) redis_host = '127.0.0.1'; if (!use_port) use_port = true; else use_port = (use_port === 'y' ? true : false);
if (!redis_port) redis_port = 6379; if (!redis_host) redis_host = '127.0.0.1';
if (!secret) secret = utils.generateUUID(); if (!redis_port) redis_port = 6379;
if (!secret) secret = utils.generateUUID();
var fs = require('fs'),
path = require('path'), var fs = require('fs'),
config = { path = require('path'),
secret: secret, config = {
base_url: base_url, secret: secret,
port: port, base_url: base_url,
use_port: use_port, port: port,
upload_path: '/public/uploads/', use_port: use_port,
redis: { upload_path: '/public/uploads/',
host: redis_host, redis: {
port: redis_port host: redis_host,
port: redis_port,
password: redis_password
}
} }
}
// Server-side config
// Server-side config fs.writeFile(path.join(__dirname, 'config.json'), JSON.stringify(config, null, 4), function(err) {
fs.writeFile(path.join(__dirname, 'config.json'), JSON.stringify(config, null, 4), function(err) { if (err) throw err;
if (err) throw err; else {
else { process.stdout.write(
process.stdout.write( "\n\nConfiguration Saved OK\n\n"
"\n\nConfiguration Saved OK\n\n" );
); if (!args.setup) {
if (!args.setup) { process.stdout.write(
"Please start NodeBB again and register a new user at " +
base_url + (use_port ? ':' + port : '') + "/register. This user will automatically become an administrator.\n\n"
);
}
process.stdout.write( process.stdout.write(
"Please start NodeBB again and register a new user at " + "If at any time you'd like to run this setup again, run the app with the \"--setup\" flag\n\n"
base_url + (use_port ? ':' + port : '') + "/register. This user will automatically become an administrator.\n\n"
); );
process.exit();
} }
process.stdout.write( });
"If at any time you'd like to run this setup again, run the app with the \"--setup\" flag\n\n"
); // Client-side config
process.exit(); fs.writeFile(path.join(__dirname, 'public', 'config.json'), JSON.stringify({
} socket: {
address: base_url,
port: port
},
api_url: base_url + (use_port ? ':' + port : '') + '/api/'
}, null, 4))
}); });
// Client-side config
fs.writeFile(path.join(__dirname, 'public', 'config.json'), JSON.stringify({
socket: {
address: base_url,
port: port
},
api_url: base_url + (use_port ? ':' + port : '') + '/api/'
}, null, 4))
}); });
}); });
}); });

@ -7,6 +7,10 @@
RedisDB.exports = redis.createClient(global.config.redis.port, global.config.redis.host); RedisDB.exports = redis.createClient(global.config.redis.port, global.config.redis.host);
if( global.config.redis.password ) {
RedisDB.exports.auth(global.config.redis.password);
}
RedisDB.exports.handle = function(error) { RedisDB.exports.handle = function(error) {
if (error !== null) { if (error !== null) {
if (PRODUCTION === false) { if (PRODUCTION === false) {

Loading…
Cancel
Save