Now that we have our use case defined and a working solution created, we want to introduce updates to the cookbook to turn what we have into a better solution that uses Custom Resources. Specifically, we are going to create a "website" Custom Resource.
Custom Resources are created by making a Ruby file in the cookbook's resources folder. The resource name will be the name of the file created. For example, if we want to create a "website" Custom Resource, we would create a new Ruby file named
website.rb, as follows:
mkdir –p ~/chef-repo/cookbooks/mywebapp/resources touch ~/chef-repo/cookbooks/mywebapp/resources/website.rb
This will create a new folder named
resources and create ...