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


nvp (1) Versions 0.1.0

Installs/configures Nicira's Network Virtualization Platform for use with OpenStack Quanutm

cookbook 'nvp', '~> 0.1.0', :supermarket
cookbook 'nvp', '~> 0.1.0'
knife supermarket install nvp
knife supermarket download nvp
Quality 17%


This cookbook configures the Nicira Network Virtualization Platform as part of an OpenStack Folsom deployment. The cookbook depends on its end user to have access to proprietary Nicira software packages to install OpenVswitch since they are not publically available. Additionally, this cookbook does not manage installation of NVP appliances directly. NVP appliances should already be installed in your environment prior to using this cookbook.

This cookbook can be used to configure an OpenStack Nova Controller or Nova Compute node to use NVP as a plugin for the Quantum Networking service. It can also configure virtual networks on NVP appliances based on specified attributes.


Chef 0.10.0 or higher required (for Chef environment use).


  • Ubuntu-12.04


For distribution, this cookbook contains 4 zero-byte openvswitch debian packages in its files/ directory. To use this cookbook for installing OpenVswitch, replace the zero-byte files included in the cookbook with the deb packages you have received from Nicira prior to uploading them to your Chef server. This cookbook has only been verified to work with the exact package versions listed in the zero-byte file names, but may work with other versions of Nicira's OpenVswitch build.


This package distribution method is used since Nicira does not make their packages available for use in public repos.


The following cookbooks are dependencies:

  • quantum



-includes recipe ovs


-distributes openvswitch packages to your node
-installs package dependencies
-installs openvswitch


-ensures the quantum::server and quantum::plugin recipes have been applied
-ensures openvswitch has been installed
-generates a script to configure your distributed NVP controllers
-applies that script idempotently

Note: at present, this recipe is intended to initially set up NVP in an OpenStack Cluster


  • nvp['ovs']['pkgs'] - sets the name of ovs pkgs to distribute and install

  • nvp['controllers'] - array of IP addresses for all NVP controller nodes

  • nvp['user'] - user login to configure NVP appliances

  • nvp['pass'] - user password to configure NVP appliances

  • nvp['default-route'] - default route used on NVP controller nodes

  • nvp['timeout'] - adjustable timeout for issuing commands to NVP appliances

  • nvp['zonename'] - Name of NVP zone

  • nvp['nvp_api_client_endpoint'] - NVP Controller API endpoint for issuing commands

  • nvp['hvs'] - array of IP addresses for all hypervisors to be controlled by NVP nodes

  • nvp['hv_user'] - user login to configure hypervisor networking stack

  • nvp['hv_pass'] - user password to configure hypervisor networking stack

For each service node to configure:
* nvp['sn_name']['ip'] - IP of service node
* nvp['sn_name']['id'] - Service Node ID
* nvp['sn_name']['gateway'] - Service Node gateway
* nvp['sn_name']['controller'] - Controller to use for configuring service node
* nvp['sn_name']['sub1'] - Network prefix currently used
* nvp['sn_name']['sub2'] - Network prefix desired
Change sn_name to the name of your service node, and repeat for additional service nodes to configure

For each network tenant to configure:
* nvp['tenants']['tenant_id']['name'] - Name to identify tenant
* nvp['tenants']['tenant_id']['vif'] - Virtual Network Interface to use
* nvp['tenants']['tenant_id']['vms'] - An array of VM names to associate with this tenant
Change tenant_id to the the id of your tenant, and repeat for additional tenants to configure

License and Author

Author:: George Miranda (
Author:: Duffie Cooley (

Copyright 2013, Opscode, Inc.
Copyright 2013, VMware, Inc.

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

quantum >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Collaborator Number Metric

0.1.0 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Contributing File Metric

0.1.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of, and your repo must contain a file

Foodcritic Metric

0.1.0 failed this metric

FC064: Ensure issues_url is set in metadata: nvp/metadata.rb:1
FC065: Ensure source_url is set in metadata: nvp/metadata.rb:1
FC066: Ensure chef_version is set in metadata: nvp/metadata.rb:1
FC069: Ensure standardized license defined in metadata: nvp/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any

No Binaries Metric

0.1.0 passed this metric

Testing File Metric

0.1.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of, and your repo must contain a file

Version Tag Metric

0.1.0 failed this metric

Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of, and your repo must include a tag that matches this cookbook version number