https://github.com/hubotio/hubot-redis-brain
A hubot script to persist hubot's brain using redis
https://github.com/hubotio/hubot-redis-brain
hubot hubot-scripts
Last synced: 9 months ago
JSON representation
A hubot script to persist hubot's brain using redis
- Host: GitHub
- URL: https://github.com/hubotio/hubot-redis-brain
- Owner: hubotio
- Created: 2014-10-18T19:51:32.000Z (over 11 years ago)
- Default Branch: main
- Last Pushed: 2025-06-26T04:32:28.000Z (about 1 year ago)
- Last Synced: 2025-08-19T14:28:24.707Z (11 months ago)
- Topics: hubot, hubot-scripts
- Language: JavaScript
- Size: 752 KB
- Stars: 68
- Watchers: 9
- Forks: 57
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

Note: The build is failing because I don't have access to this organization to update the NPM_TOKEN; nor do I have access to the NPM package on npmjs to create a new NPM_TOKEN. If you want to use the latest version of this module, you can `npm i hubotio/hubot-redis-brain#main` install it from the GitHub repo directly, instead of the npm registry.

# hubot-redis-brain
A hubot script to persist hubot's brain using redis
See [`src/RedisBrain.js`](src/RedisBrain.js) for full documentation.
## Installation
In hubot project repo, run:
`npm install hubot-redis-brain --save`
Then add **hubot-redis-brain** to your `external-scripts.json`:
```json
[
"hubot-redis-brain"
]
```
## Configuration
hubot-redis-brain requires a redis server to work. It uses the `REDIS_URL` environment variable for determining
where to connect to. The default is on localhost, port 6379 (ie the redis default).
The following attributes can be set using the `REDIS_URL`
* authentication
* hostname
* port
* key prefix
For example, `export REDIS_URL=redis://:password@192.168.0.1:16379/prefix` would
authenticate with `password`, connecting to `192.168.0.1` on port `16379`, and store
data using the `prefix:storage` key.
For a UNIX domain socket, `export REDIS_URL=redis://:password@/var/run/redis.sock?prefix` would authenticate with `password`, connecting to `/var/run/redis.sock`, and store data using the `prefix:storage` key.
### Installing your own
If you need to install and
run your own, most package managers have a package for redis:
* Mac OS X with homebrew: `brew install redis`
* Ubuntu/Debian with apt: `apt-get install redis-server`
* Compile from source: http://redis.io/topics/quickstart
### Boxen
If you are using [boxen](https://boxen.github.com/) to manage your environment,
hubot-redis-brain will automatically use the boxen-managed redis (ie by using `BOXEN_REDIS_URL`).
### Heroku
If you are deploying on [Heroku](https://www.heroku.com/), you can add the
Redis Cloud or Redis To Go addon to have automatically configure itself to use it:
* [Redis Cloud](https://addons.heroku.com/rediscloud)
* [Redis To Go](https://addons.heroku.com/redistogo)
Other redis addons would need to be configured using `REDIS_URL` until support
is added to hubot-redis-brain (or hubot-redis-brain needs to be updated to look
for the environment variable the service uses)
### Redis Twemproxy
If you are using [Twemproxy](https://github.com/twitter/twemproxy) to cluster redis,
you need to turn off the redis ready check which uses the unsupported INFO cmd.
`REDIS_NO_CHECK = 1`