node-ramdisk
(This repository is a fork of node-ramdisk). Our CI is on a windows machine, even though the application using this module are not running on windows. In order for us to be able to build it, we are removing the os targets of darwin and linux from the module's package.json.
If you need to use a library. Please refer to the original one at https://github.com/joaquimserafim/node-ramdisk.
create a ram disk with node.js
API
var ramdisk = require('node-ramdisk')
return a ramdisk
object
ramdisk(volumeName)
var disk = ramdisk('my_ramdisk')
ramdisk#create(size[, callback(err, mount)])
- size - {integer} the size of the volume in MB
- callback - {function}
- err - {Error} error message
- mount - {string} the mounted block, in case of error is undefined
ramdisk#delete(volume[, callback(err, res)])
- mount - {string} the mounted block
- callback {function}
- err - {Error} error message
- res - {string} return 'ok' in case of success, in case of error is undefined
Note: delete will eject the volume and remove the mount folder
Usage
var ramdisk = require('node-ramdisk')
var disk = ramdisk('my_ramdisk')
var volumePoint
// create a disk with 100MB of size
disk.create(100, function (err, mount) {
if (err) {
console.log(err)
} else {
volumePoint = mount
console.log(mount)
}
})
// when isn't needed then delete the disk
disk.delete(volumePoint, function (err) {
if (err) {
console.log(err)
} else {
console.log('ok')
}
})
Debug
DEBUG=node-ramdisk ...
Supported OS
- darwin (bad performance - is taking around 1 sec. to create the disk in my macbook pro mid 2012)
- linux (good performance - 20/30 mls to create the disk in a vagrant vm with few resources)
Development
this projet has been set up with a precommit that forces you to follow a code style, no jshint issues and 100% of code coverage before commit
to run test
npm test
to run jshint
npm run jshint
to run code style
npm run code-style
to run check code coverage
npm run check-coverage
to open the code coverage report
npm run open-coverage