knife-cookbook-site(1) -- Install and update open source cookbooks
========================================

## SYNOPSIS

__knife__ __cookbook site__ _sub-command_ _(options)_

## COOKBOOK SITE SUB-COMMANDS
`knife cookbook site` provides the following subcommands:

## INSTALL
__cookbook site install COOKBOOK [VERSION]__ _(options)_

  * `-d`, `--dependencies`:
    Grab dependencies automatically

Uses git(1) version control in conjunction with the cookbook site to
install community contributed cookbooks to your local cookbook
repository. Running `knife cookbook site install` does the following:

1. A new "pristine copy" branch is created in git for tracking the
   upstream;
2. All existing cookbooks are removed from the branch;
3. The cookbook is downloaded from the cookbook site in tarball form;
4. The downloaded cookbook is untarred, and its contents commited via git;
5. The pristine copy branch is merged into the master branch.

By installing cookbook with this process, you can locally modify the
upstream cookbook in your master branch ant let git maintain your
changes as a separate patch.  When an updated upstream version becomes
available, you will be able to merge the upstream changes while
maintaining your local modifications.

If _-d_ is specified, the process is applied recursively to all the
cookbooks _COOKBOOK_ depends on (via metadata _dependencies_).

## DOWNLOAD
__knife cookbook site download COOKBOOK [VERSION]__ _(options)_

  * `-f`, `--file FILE`:
    The filename to write to
  * `--force`:
    Force download deprecated cookbook

Downloads a specific cookbook from the Community site, optionally
specifying a certain version.

## LIST
__knife cookbook site list__ _(options)_

  * `-w`, `--with-uri`:
    Show corresponding URIs

Lists available cookbooks from the Community site.

## SEARCH
__knife cookbook site search QUERY__ _(options)_

Searches for available cookbooks matching the specified query.

## SHARE
__knife cookbook site share COOKBOOK CATEGORY__ _(options)_

  * `-k`, `--key KEY`:
    API Client Key
  * `-u`, `--user USER`:
    API Client Username
  * `-o`, `--cookbook-path PATH:PATH`:
    A colon-separated path to look for cookbooks in

Uploads the specified cookbook using the given category to the Opscode
cookbooks site. Requires a login user and certificate for the Opscode
Cookbooks site. By default, knife will use the username and API key
you've configured in your configuration file; otherwise you must
explicitly set these values on the command line or use an alternate
configuration file.

## UNSHARE
__knife cookbook site unshare COOKBOOK__

Stops sharing the specified cookbook on the Opscode cookbooks site.

## SHOW
__knife cookbook site show COOKBOOK [VERSION]__ _(options)_

Shows information from the site about a particular cookbook.

## DESCRIPTION
The cookbook site, <http://community.opscode.com/>, is a cookbook
distribution service operated by Opscode. This service provides users
with a central location to publish cookbooks for sharing with other
community members.

`knife cookbook site` commands provide an interface to the cookbook
site's HTTP API. For commands that read data from the API, no account is
required. In order to upload cookbooks using the `knife cookbook site
share` command, you must create an account on the cookbook site and
configure your credentials via command line option or in your knife
configuration file.

## EXAMPLES
Uploading cookbooks to the Opscode cookbooks site:

    knife cookbook site share example Other -k ~/.chef/USERNAME.pem -u USERNAME

## SEE ALSO
   __knife-cookbook(1)__
   <http://community.opscode.com/cookbooks>

## AUTHOR
   Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.

## DOCUMENTATION
   This manual page was written by Joshua Timberman <joshua@opscode.com>.
   Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.

## CHEF
   Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>

