Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Chef Cookbook
  • Table Of Contents Toc
Chef Cookbook

Chef Cookbook - Third Edition

By : Matthias Marschall
close
close
Chef Cookbook

Chef Cookbook

By: Matthias Marschall

Overview of this book

Chef is a configuration management tool that lets you automate your more cumbersome IT infrastructure processes and control a large network of computers (and virtual machines) from one master server. This book will help you solve everyday problems with your IT infrastructure with Chef. It will start with recipes that show you how to effectively manage your infrastructure and solve problems with users, applications, and automation. You will then come across a new testing framework, InSpec, to test any node in your infrastructure. Further on, you will learn to customize plugins and write cross-platform cookbooks depending on the platform. You will also install packages from a third-party repository and learn how to manage users and applications. Toward the end, you will build high-availability services and explore what Habitat is and how you can implement it.
Table of Contents (9 chapters)
close
close
8
Index

Using search to find data bag items


You might want to execute code in your recipe multiple times – once for each data bag item, such as for each user or each HTTP endpoint.

You can use search to find certain data bag items and loop through the search results to execute code multiple times.

Let's see how we can make our recipes more dynamic by searching for data bag items.

Getting ready

Follow the Getting ready and How to do it... (steps 1 to 4) sections in the Using data bags recipe in this chapter. You might want to add a few more HTTP endpoints to your data bag.

How to do it...

Let's create a recipe to search for data bag items and call the http_request resource for each one:

  1. Edit the default recipe of my_cookbook to retrieve all HTTP hooks from your data bag, which should be called by your recipe:

    mma@laptop:~/chef-repo $ subl   cookbooks/my_cookbook/recipes/default.rb
    search(:hooks, '*:*').each do |hook|
      http_request 'callback' do
        url hook['url']
      end
    end
    
  2. Upload your modified recipe...

CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Chef Cookbook
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon