npm-utils
Async NPM shell commands: install, test, etc.
Use
var npmUtils = require('npm-utils');
npmUtils.version()
.then(function (semver) {
console.log('NPM version %s', semver);
});
API
path()
install({
name: string,
version: string (optional),
prefix: string (optional),
passThroughData: obj (optional),
registry: string (optional)
flags: ['--save', '--verbose']
})
returns a promise
Note: the name
could be another folder or a tar archive; passed to npm install <name>
unchanged, that can be any match. See npm help install
version()
test()
test('grunt test');
The child test process will inherit output streams from the parent.
registryUrl();
publish({ tag: '...'});
getPackage
Loads package.json
from a given folder
var pkg = npm.getPackage(folder);
console.log('%s version %s', pkg.name, pkg.version);
pack
Runs npm pack <folder name>
command. Resolves with the name of the generated tarball file.
pack({ folder: 'path/to/folder' })
If folder is not provided, uses the current one
Troubleshooting
Run the command with DEBUG=npm-utils
environment variable set, this package
uses debug
Small print
Author: Gleb Bahmutov @ 2013 @bahmutov
License: MIT - do anything with the code, but don't blame me if it does not work.