2014-09-26 09:46:23 -04:00
|
|
|
_ = require("underscore")
|
|
|
|
|
2014-11-19 06:01:02 -05:00
|
|
|
module.exports = RedisSharelatex =
|
|
|
|
createClient: (opts = {port: 6379, host: "localhost"})->
|
2014-11-19 06:02:27 -05:00
|
|
|
if !opts.retry_max_delay?
|
|
|
|
opts.retry_max_delay = 5000 # ms
|
|
|
|
|
2014-09-29 06:40:40 -04:00
|
|
|
if opts.password?
|
|
|
|
opts.auth_pass = opts.password
|
|
|
|
delete opts.password
|
2014-09-26 09:46:23 -04:00
|
|
|
if opts.endpoints?
|
|
|
|
standardOpts = _.clone(opts)
|
|
|
|
delete standardOpts.endpoints
|
|
|
|
delete standardOpts.masterName
|
|
|
|
client = require("redis-sentinel").createClient opts.endpoints, opts.masterName, standardOpts
|
2014-09-25 12:33:27 -04:00
|
|
|
else
|
2014-09-26 09:46:23 -04:00
|
|
|
standardOpts = _.clone(opts)
|
|
|
|
delete standardOpts.port
|
|
|
|
delete standardOpts.host
|
|
|
|
client = require("redis").createClient opts.port, opts.host, standardOpts
|
2014-11-19 11:39:06 -05:00
|
|
|
return client
|