Skip to content

j5ndev/cache-shrinkwrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#Purpose

This module is a utility for system administrators which is intended to be installed globally and used at command line.

It adds all dependencies, including child dependencies, contained in an npm-shrinkwrap.json file to the npm cache.

Read the documentation for npm-shrinkwrap for specifics about generating this file.

Getting Started

Install the module with:

npm install -g cache-shrinkwrap

Documentation

The cache-shrinkwrap command can be executed with either one or no arguments:

# With no argument, it looks in the current or parent directory for npm-shrinkwrap.json
cache-shrinkwrap

# You can also specify the path to a file created by npm shrinkwrap command
cache-shrinkwrap wraps/npm-shrinkwrap-2014-01-12.json

The result of inputting this npm-shrinkwrap.json file:

{
  "name": "cache-shrinkwrap",
  "version": "0.1.0",
  "dependencies": {
    "nopt": {
      "version": "2.2.0",
      "from": "nopt@2.2.0",
      "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.2.0.tgz",
      "dependencies": {
        "abbrev": {
          "version": "1.0.4",
          "from": "abbrev@1",
          "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz"
        }
      }
    },
  ...

Is equivalent to executing these commands:

npm cache add abbrev@1.0.4
npm cache add nopt@0.1.0
...

Although, it is not exactly equivalent. Node is only fired up once and all dependencies are added to the cache through npm's api in a single session as follows: npm.commands.cache(['add', 'abbrev@1.0.4']). In other words, it is much faster than trying to execute multiple npm cache add name@version statements.

##API

Although only intended for command line usage, there is a public api.

var cache_shrinkwrap = require('cache-shrinkwrap');
cache_shrinkwrap.addFilePath('project/nsw.json');

##References:

  1. npm-shrinkwrap
  2. npm-cache
  3. StackOverflow - Can dependencies be included when using npm cache add?

License

Copyright (c) 2014 SLCHackers Licensed under the MIT license.

About

Add all dependencies in npm-shrikwrap.json to the npm cache.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors