Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms

Select Status

The npm_registry cookbook has been deprecated

Author provided reason for deprecation:

The npm_registry cookbook has been deprecated and is no longer being maintained by its authors. Use of the npm_registry cookbook is no longer recommended.

You may find that the npm_lazy cookbook is a suitable alternative.


npm_registry (3) Versions 0.1.0

Installs and configures an NPM registry

cookbook 'npm_registry', '= 0.1.0', :supermarket
cookbook 'npm_registry', '= 0.1.0'
knife supermarket install npm_registry
knife supermarket download npm_registry
Quality -%


Installs and configures an NPM package registry using the official NPM project layout. If you are installing this locally (such as with Vagrant), it is recommended you set the attributes node['couch_db']['httpd']['bind_address'] to "" and node['couch_db']['httpd']['secure_rewrites'] to false.



  • Ubuntu

Tested on:

  • Ubuntu 12.04
  • Ubuntu 12.10


Requires Opscode's git and couchdb cookbooks and Marius Ducea's nodejs cookbook. Opscode's cron cookbook is required for scheduled replication. See Attributes and Usage for more information.


See the attributes/defaults.rb for default values.

  • node['npm_registry']['git']['url'] - The URL to NPM's registry repository. Attribute is provided in case the repository is ever moved.
  • node['npm_registry']['git']['reference'] - The branch or tag name to checkout from the Git repository.
  • node['npm_registry']['couchdb']['couch'] - The full path to your .couch file.
  • node['npm_registry']['couchdb']['username'] - The username for authenticating against your database.
  • node['npm_registry']['couchdb']['password'] - The password for authentication against your database.
  • node['npm_registry']['couchdb']['port'] - The port number your database is running on.
  • node['npm_registry']['registry']['url'] - The URL to your locally installed NPM registry.
  • node['npm_registry']['isaacs']['registry']['url'] - The URL to the official NPM registry (used for replication).
  • node['npm_registry']['replication']['use_replication'] - Whether to use replication.
  • node['npm_registry']['replication']['cron']['use_cron'] - Whether to use cron for replication.
  • node['npm_registry']['replication']['cron']['minute'] - The cron minute value.
  • node['npm_registry']['replication']['cron']['hour'] - The cron hour value.
  • node['npm_registry']['replication']['cron']['weekday'] - The cron weekday value.
  • node['npm_registry']['replication']['cron']['day'] - The cron day value.
  • node['npm_registry']['replication']['cron']['month'] - The cron month value.


To install and configure the default NPM package registry, use:

{ "run_list": ["recipe[npm_registry]"] }

To use replication with cron, use:

{ "run_list": ["recipe[cron]", "recipe[npm_registry]"] }


This cookbook includes support for running tests via Test Kitchen (1.0). This has some requirements.

  1. You must be using the Git repository, rather than the downloaded cookbook from the Chef Community Site.
  2. You must have Vagrant 1.1 installed.
  3. You must have a "sane" Ruby 1.9.3 environment.

Once the above requirements are met, install the additional requirements:

Install the berkshelf plugin for vagrant, and berkshelf to your local Ruby environment.

vagrant plugin install vagrant-berkshelf
gem install berkshelf

Install Test Kitchen 1.0 (unreleased yet, use the alpha / prerelease version).

gem install test-kitchen --pre

Install the Vagrant driver for Test Kitchen.

gem install kitchen-vagrant

Once the above are installed, you should be able to run Test Kitchen:

kitchen list
kitchen test


Copyright 2013 Cory Roloff

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.

Dependent cookbooks

git >= 0.0.0
couchdb >= 0.0.0
nodejs >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

No quality metric results found