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


lockrun (6) Versions 1.0.0

Installs lockrun executable for running cronjobs with overrun protection.

cookbook 'lockrun', '= 1.0.0'
cookbook 'lockrun', '= 1.0.0', :supermarket
knife supermarket install lockrun
knife supermarket download lockrun
Quality 80%


Release Build Status Code Coverage

Installs the lockrun executable for running cronjobs with overrun protection.

Basic Usage

This cookbook is extremely useful when you only want to have a single process running at a time. We use this to ensure that there is only ever one Chef Client running at a time. If a process already has the lock it bails out immediately.

Instead of writing a wrapper script every time you want this functionality simply use the lockrun executable. It counts the number of open file descriptors to a lockfile on disk. ```ruby include_recipe 'lockrun::default'

sleep_time = 0 unless node['chef_client']['splay'].to_i == 0 checksum = Digest::MD5.hexdigest(node['fqdn'] || 'unknown-hostname') sleep_time = checksum.to_s.hex % node['chef_client']['splay'].to_i end

lockrun_cron 'chef-client' do command "/bin/sleep #{sleep_time}; chef-client > /dev/null 2>&1" cron_options(minute: '0', hour: '', weekday: '') end ```

Out of the box the following platforms are certified to work and are tested using our [Test Kitchen][8] configuration. Additional platforms may work, but your mileage may vary. - CentOS (RHEL) 5.8, 6.6, 7.1 - Ubuntu 12.04, 14.04

Dependent cookbooks

poise ~> 2.0
libarchive ~> 0.6
build-essential >= 0.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Collaborator Number Metric

1.0.0 passed this metric

Foodcritic Metric

1.0.0 passed this metric

Foodcritic Metric

1.0.0 failed this metric

FC031: Cookbook without metadata file: /tmp/cook/24437ee0722db3ede3ece70e/lockrun/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/24437ee0722db3ede3ece70e/lockrun/metadata.rb:1

License Metric

1.0.0 passed this metric

Publish Metric

1.0.0 passed this metric