Adoptable Cookbooks List

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.

This cookbook also provides primitives for building and managing your Chef infrastructure.

It will perform component installation and configuration. It provides no recipes. Instead, wrapper cookbooks should be created using the resources that this cookbook provides.

Requirements

Platforms

Ubuntu 12.04, 14.04, 16.04

CentOS 6, 7

Chef

Chef 12.5+

Cookbooks

none

Chef Product Resources

chef_ingredient

A "chef ingredient" is the core package itself, or products or add-on components published by Chef Software, Inc. This resource manages the installation, configuration, and running the ctl reconfigure of individual packages.

By default, chef_ingredient will install using the packages.chef.io stable repository depending on the platform. However, it can be configured to use a custom repository by setting the node['chef-ingredient']['custom-repo-recipe'] attribute (nil by default).

Properties

config - content that will be added to the configuration file of the given product.

ctl_command - The "ctl" command, e.g., chef-server-ctl. This should be automatically detected by the library helper method chef_ctl_command, but may need to be specified if something changes, like a new add-on is made available.

options - Options passed to the package resource used for installation.

version - Package version to install. Can be specified in various semver-alike ways: 12.0.4, 12.0.3-rc.3, and also :latest/'latest'. Do not use this property when specifying package_source.

channel - Channel to install the products from. It can be :stable, :current or :unstable.

package_source - Full path to a location where the package is located. If present, this file is used for installing the package.

timeout - The amount of time (in seconds) to wait to fetch the installer before timing out. Default timeout of the Chef package resource is 900 seconds.

accept_license - A boolean value that specifies if license should be accepted if it is asked for during reconfigureaction. This option is applicable to only these products: manage, analytics, reporting and compliance.

platform - Override the auto-detected platform for which package to install.

platform_version - Override the auto-detected platform version for which package to install.

architecture - Override the auto-detected architecture for which package to install.

platform_version_compatibility_mode - Find closest matching package when platform auto-detection does not find an exact package match in the repository.

omnibus_service

Manages a sub-service within the context of a Chef product package. For example the rabbitmq service that is run for the Chef Server.

Actions

This delegates to the ctl command the service management command specified in the action. Not all the service management commands are supported, however, as not all of them would make sense when used in a recipe. This resource is primarily used for sending or receiving notifications. See the example section.

Properties

service_name - The name of the service to manage. Specify this like product_name/service, for example, chef-server/rabbitmq.

ctl_command - The "ctl" command, e.g. chef-server-ctl. This should be automatically detected by the library helper method chef_ctl_command, but may need to be specified if something changes, like a new add-on is made available.

ingredient_config

Makes it easy to create update configuration files of each Chef product. It uses the default locations for each product.

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
http://www.apache.org/licenses/LICENSE-2.0
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.

2.0.4 (2017-04-13)

2.0.3 (2017-04-13)

2.0.2 (2017-04-11)

Update resources to support Chef 12.5 and 12.6

2.0.1 (2017-03-28)

Update DefaultHandler and OmnitruckHandler to use a global constant lookup. In some environments, not doing so caused a naming conflict with the dynamically generated ChefIngredient DSL resource class.

2.0.0 (2017-03-24)

Remove chef_server_ingredient resource shim

Update mixlib-install to major version 3

platform_version_compatibility_mode property no longer has a default value

If no matching artifacts are found a Mixlib::Install::Backend::ArtifactsNotFound exception is raised instead a RuntimeError

All resources have been converted to custom resources

1.1.0 (2017-03-01)

Test with local delivery and not Rake

Remove sensitive property for Chef 13 compatibility as this properly is provided by chef-client now for us by any resource and doesn't need to be defined

Test in Travis CI with kitchen-dokken and convert tests to InSpec

1.0.1 (2017-02-22)

Testing cleanup for Chef 13 compatibility and testing on the latest platforms

1.0.0 (2017-02-15)

Require Chef 12.5+ and remove compat_resource dependency

Use mixlib-install >= 2.1.12 - this brings in an important fix for the delivery -> automate package rename. See the Discourse announcement for details on the rename

0.21.4 (2017-02-13)

Add properties to override the platform details of a chef_ingredient product to install

0.21.3 (2017-02-02)

Add timeout to package resource created by configure_from_source_package

0.21.2 (2016-10-26)

Fix issue when failed package installs using OmnitruckHandler would not raise a converge error on subsequent runs

0.21.1 (2016-10-25)

Update SUSE platform to use DefaultHandler

0.21.0 (2016-09-26)

Update mixlib-install to version 2.0 (PackageRouter support)

0.20.0 (2016-09-08)

Remove extraneous converge_by that caused downloads to show as converged on every run

v0.18.5

v0.18.4

Add platform_version_compatibility_mode property to chef_ingredient which makes chef-ingredient select packages built for earlier version of a platform during install when a package does not exist for the current platform version.

v0.18.3

Add accept_license property to chef_ingredient which can accept license for Chef products when applicable.

v0.18.2

Set version constraint to ~> 1.0 for installing mixlib-install from Rubygems

v0.18.1

Bump mixlib-install version to 1.0.6 so unstable channel artifacts won't include metadata.json files.