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


snoopy (6) Versions 1.0.2

Installs/configures Snoopy Logger

cookbook 'snoopy', '= 1.0.2'
cookbook 'snoopy', '= 1.0.2', :supermarket
knife supermarket install snoopy
knife supermarket download snoopy
Quality 100%

Snoopy Cookbook

Cookbook Version Build Status Code Climate Coverage Status

A Chef cookbook for Snoopy Logger.

Because there is no Snoopy package easily available for RHEL, and the one for Ubuntu 14.04 is extremely old, this cookbook uses newer packages that we build ourselves and store in


This cookbook currently supports Ubuntu only. It intentionally maintains backward compatibility with Chef 11, at the expense of some minor additional complexity.


Either add the snoopy default recipe to your node's run_list, or make use of the included Chef resources in a recipe of your own.



Set up the proper package repository; install Snoopy; configure it; and enable it on the system, all in an attribute-driven fashion.



default['snoopy']['app']['source'] = nil

An optional custom file path or URL to a Snoopy package to install.

default['snoopy']['config'] = nil

An optional hash of config overrides, in underscore format, to pass into Snoopy's config.



A parent resource that couples an app, config, and service resource together.


snoopy 'default' do
    source '/tmp/snoopy.deb'
    config filterchain: 'exclude_uid:0'
    action :create


Action Description
:create Install, configure, and enable Snoopy
:remove Disable and uninstall Snoopy


Attribute Default Description
source nil An optional package source path/URL
config nil An optional hash of configuration overrides
action :install Action(s) to perform


The resource that manages installation of the Snoopy repo and packages.


snoopy_app 'default' do
    source '/tmp/snoopy.deb'
    action :install


Action Description
:install Enable the custom package repo and install Snoopy
:remove Uninstall Snoopy and disable the package repo


Attribute Default Description
source nil An optional package source path/URL
action :install Action(s) to perform


The child resource for handling Snoopy's configuration.


snoopy_config 'default' do
    config { some_option_key: 'some_option_value' }
    action :install


Action Description
:create Render the config
:remove Delete the config


Attribute Default Description
config nil Optional hash of config overrides
action :install Action(s) to perform



The main provider for the parent snoopy resource.


Provider to handle installation and removal of the Snoopy packages.


The child provider for managing Snoopy's configuration.


Provider to manage enabling and disabling Snoopy logging.


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Add tests for the new feature; ensure they pass (rake)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request

License & Authors

Copyright 2015 Socrata, 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, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Snoopy Cookbook CHANGELOG

v1.0.2 (2015-10-29)

  • Fix issue with compile_time method name collisions when using the cookbook in combination with older versions of Chef Sugar

v1.0.1 (2015-10-22)

  • Default config attribute to an empty hash instead of nil so overrides can be done without worrying about nil reference errors
  • Clear up a Chef nil warning by not passing on a source attribute from the default recipe unless it's non-nil

v1.0.0 (2015-10-22)

  • Switch from the year-old base Ubuntu package to a custom-built version
  • Add ability to manage the config file that newer versions support
  • Fully refactor the resources and providers in preparation for future additional platform support

v0.1.0 (2015-09-30)

  • Initial release; Ubuntu only

v0.0.1 (2015-09-28)

  • Development started

Foodcritic Metric

1.0.2 passed this metric