This worker can be launched by cron or other scheduler to run daily and bulk deletions all expired documents from your couchdb databases.
npm install expired -g
First you want to create a config file, this file will list the server and all of your databases that you wish to manage: (eg. expired-config.json)
{
"server": "http://localhost:5984",
"dbs": ["*"],
"_design_doc": {
"_id": "expired",
"language": "javascript",
"views": {
"_default": {
"map": "function(doc) { \n var expire = (new Date(doc.expires_in)),\n today = (new Date());\n if (expire < today) {\n emit(doc._id, doc._rev);\n }\n}\n"
}
}
}
}
crontab -e
0 3 * * * expired ~/expired-config.json
Now every day on the 3rd hour the expire job should run.
npm test
- fork and clone
npm install
npm test
MIT
- Pull Requests welcome, please include tests
- add test for design doc creation
- add test for multiple databases