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


supermarket-omnibus-cookbook (14) Versions 3.0.0

Installs and Configures Supermarket from the Omnibus packages on

cookbook 'supermarket-omnibus-cookbook', '~> 3.0.0', :supermarket
cookbook 'supermarket-omnibus-cookbook', '~> 3.0.0'
knife supermarket install supermarket-omnibus-cookbook
knife supermarket download supermarket-omnibus-cookbook
Quality 33%


Build Status Cookbook Version

This cookbook installs the Chef Supermarket server using the omnibus-supermarket packages from<br>
This cookbook also renders supermarket.json file which is used for managing configuration of Supermarket.



  • Ubuntu 12.04+
  • RHEL 6+


  • Chef 12.5+


  • chef-ingredient
  • hostsfile


Set the following attributes in the .kitchen.local.yml or via a wrapper cookbook. The values will be obtained from your oc-id server. For more information see: Getting Started with oc-id and Supermarket

default['supermarket_omnibus']['chef_server_url'] = ''
default['supermarket_omnibus']['chef_oauth2_app_id'] = '14dfcf186221781cff51eedd5ac1616'
default['supermarket_omnibus']['chef_oauth2_secret'] = 'a49402219627cfa6318d58b13e90aca'
default['supermarket_omnibus']['chef_oauth2_verify_ssl'] = false

If you wish to specify a package version, a channel, or a source, you can do that now. You can also specify a recipe to install from your own package repository.

default['supermarket_omnibus']['package_version'] = '1.2.3'

# install from Chef's `current` channel
default['supermarket_omnibus']['package_repo'] = 'current'

# OR, specify a Supermarket package explicitly from a location of your choosing
default['supermarket_omnibus']['package_url'] = ''

# specify a recipe to install from your own package repository
default['supermarket_omnibus']['custom_repo_recipe'] = 'my_cookbook::my_repo'

If you wish to specify additional settings, you can pass them via the default['supermarket_omnibus']['config'] attribute.<br>
Example: for custom SSL certificates define the following config attributes:

default['supermarket_omnibus']['config']['ssl']['certificate'] = '/full/path/to/ssl.crt'
default['supermarket_omnibus']['config']['ssl']['certificate_key'] = '/full/path/to/ssl.key'

Above attributes, if defined in supermarket.rb directly, would look like this:

supermarket['ssl']['certificate'] = '/full/path/to/ssl.crt'
supermarket['ssl']['certificate_key'] = '/full/path/to/ssl.key'

The Collaborator Groups feature is enabled in this cookbook's attributes/default.rb.

:warning: It's super important to be aware that supermarket.json always wins. Best practice is to modify your supermarket configuration via ['config'] setting in a wrapper cookbook.

To find out all supermarket config attributes you can override, see omnibus-supermarket. Translation of attributes from supermarket-omnibus-cookbook to attributes in omnibus-supermarket occurs in the supermarket_server resource provided by this cookbook which produces a JSON(/etc/supermarket/supermarket.json) that omnibus-supermarket reads. For example:

# an attribute you define via this supermarket-omnibus-cookbook
default['supermarket_omnibus']['config']['nginx']['log_rotation']['num_to_keep'] = 10

# becomes the following in omnibus-supermarket
default['supermarket']['nginx']['log_rotation']['num_to_keep'] = 10

License & Authors

Copyright:: 2015-2016, Chef Software, 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.

supermarket-omnibus-cookbook Cookbook CHANGELOG

This file is used to list changes made in each version of the supermarket-omnibus-cookbook cookbook.

3.0.0 (2017-04-11)

  • Require Chef 12.5+ (for custom resources) and remove compat_resource & fancy_execute dependencies

2.0.1 (2017-01-20)

  • Upgrade chef-ingredient to use updated mixlib-install (PackageRouter support)

2.0.0 (2016-09-12)

  • Convert the LWRP to a custom resource and use compat_resource for Chef 12.1+ compatibility
  • Depend on the latest chef-ingredient cookbook
  • Add a proper requirements section to the readme
  • Fix licensing to correctly state Apache 2.0
  • Add chef_version metadata
  • Add contributing and testing docs
  • Avoid node.set deprecation warnings
  • Fix cookstyle warnings
  • Add a Rakefile for testing
  • Test entirely with ChefDK in Travis and use kitchen-dokken / cookstyle
  • Cache chefspec to speed up specs and improve output / mocked OS releases
  • Test on additional platforms in Travis

Collaborator Number Metric

3.0.0 passed this metric

Contributing File Metric

3.0.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

Cookstyle Metric

3.0.0 failed this metric

Chef/Correctness/NodeNormal: Do not use node.normal. Replace with default/override/force_default/force_override attribute levels. ( supermarket-omnibus-cookbook/resources/supermarket_server.rb: 45
Chef/Deprecations/FoodcriticFile: Do not include the `.foodcritic` config file for the deprecated Foodcritic cookbook linter. ( supermarket-omnibus-cookbook/.foodcritic: 1
Chef/Deprecations/ResourceWithoutUnifiedTrue: Set `unified_mode true` in Chef Infra Client 15.3+ custom resources to ensure they work correctly in Chef Infra Client 18 (April 2022) when Unified Mode becomes the default. ( supermarket-omnibus-cookbook/resources/supermarket_server.rb: 1
Chef/Modernize/ClassEvalActionClass: In Chef Infra Client 12.9 and later it is no longer necessary to call the class_eval method on the action class block. ( supermarket-omnibus-cookbook/resources/supermarket_server.rb: 66

Run with Cookstyle Version 7.32.1 with cops Chef/Deprecations,Chef/Correctness,Chef/Sharing,Chef/RedundantCode,Chef/Modernize,Chef/Security,InSpec/Deprecations

No Binaries Metric

3.0.0 passed this metric

Testing File Metric

3.0.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

3.0.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