I would like to share a small handful of methods across recipes in a chef repo. I know that on a cookbook level I can put code in modules in the libraries directory (see related question). What I'm looking for is something like that but available across all of the cookbooks in my Chef repo.
I can think of a couple solutions:
- Create a gem, install the gem as part of the chef run. This seems like overkill.
- Put the file in some folder and add that folder to the
$LOAD_PATH
in the recipe file. I have a feeling that won't work with actual deployment because the chef server doesn't know anything about the repo. - Put the file in some folder and symlink that into the libraries directory of each cookbook.
The last option seems like the most viable. Is there a better/more idiomatic way to do what I want?