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


line (30) Versions 0.6.2

Provides line editing resources for use by recipes

cookbook 'line', '= 0.6.2'
cookbook 'line', '= 0.6.2', :supermarket
knife cookbook site install line
knife cookbook site download line
Quality 0%

line cookbook


Quite often, the need arises to do line editing instead of managing an entire file with a template resource. This cookbook supplies various resources that will help you do this.


Add "depends 'line'" to your cookbook's metadata.rb to gain access to the resoures.

append_if_no_line "make sure a line is in dangerfile" do
  path "/tmp/dangerfile"

replace_or_add "spread the love" do
  path "/some/file"
  pattern "Why hello there.*"
  line "Why hello there, you beautiful person, you."

delete_lines "remove hash-comments from /some/file" do
  path "/some/file"
  pattern "^#.*"

add_to_list "add entry to a list"
  path "/some/file"
  pattern "People to call: "
  delim [","]
  entry "Bobby"


So far, the only resource implemented are


add_to_list delim must be an array of 1 or 2 muli-character elements. If one delimiter is given, it is assumed that either the delimiter or the given search pattern will proceed each entry and each entry will be followed by either the delimeter or a new line character: delim [","] People to call: Joe, Bobby, Karen People to call: Joe, Karen, Bobby People to call: Bobby, Joe, Karen

  If two delimiters are given, they will suround each entry. For Example:
  delim ["(,",",)"]
      People to call: (,Joe,)(,Bobby,)(,Karen,)

More to follow.


tester - A recipe to exercise the resources


Author:: Sean OMeara (

Dependent cookbooks

This cookbook has no specified dependencies.

Contingent cookbooks

al_agents Applicable Versions
autofs Applicable Versions
aws-kinesis-agent Applicable Versions
bash_history_timestamp Applicable Versions
chamber-kibana Applicable Versions
chefdk_bootstrap Applicable Versions
cis-el7-l1-hardening Applicable Versions
dynatrace Applicable Versions
dynatrace-appmon Applicable Versions
elk Applicable Versions
elkstack Applicable Versions
fipsify Applicable Versions
fqdn Applicable Versions
hdp-cloud Applicable Versions
jenkinsstack Applicable Versions
linux-tweak Applicable Versions
nfs Applicable Versions
nyan-cat Applicable Versions
ocserv Applicable Versions
openvpnas Applicable Versions
ps1 Applicable Versions
puncha-kibana Applicable Versions
rc Applicable Versions
zf2 Applicable Versions

line Cookbook CHANGELOG

v0.6.2 (2015-07-15)

  • Catch lines missed by strict patterns
  • Add rspec tests for the replace_or_add provider. The existing chefspec tests don't step into the provider code and so don't check the provider functionality.
  • Change the Gemfile to reflect the need for berkshelf 3, chefspec v4.2, rspec 3 for the tests.
  • Update provider_replace_or_add to handle cases where the pattern does not match the replacement line.
  • Fix notification problem where updated_by_last_action was set when nothing changed.

v0.6.1 (2015-02-24)

  • Adding CHANGELOG
  • Adding ChefSpec matchers

Foodcritic Metric

0.6.2 failed this metric

FC031: Cookbook without metadata file: /tmp/cook/b9f3ac3cdde4974bdbae868b/line/metadata.rb:1
FC045: Consider setting cookbook name in metadata: /tmp/cook/b9f3ac3cdde4974bdbae868b/line/metadata.rb:1