Skip to content
This repository has been archived by the owner on May 10, 2018. It is now read-only.

chef provision docs don't show how to include dependencies in './provision/metadata.rb' #833

Open
hh opened this issue Jun 20, 2016 · 0 comments

Comments

@hh
Copy link

hh commented Jun 20, 2016

I have an open discussion at https://discourse.chef.io/t/chef-provision-command-and-metadata-rb-dependencies/8717 but I'm feeling this is actually a bug in the documentation.

The chef provision command defaults to looking for a cookbook in the current directory under ./provision.

The chefdk policy related commands default to using Policyfile.rb in the current directory as well.

It feels right that the Policyfile.rb and ./provision cookbook are placed at the top level of a cookbook together to facilitate deployment and testing of that cookbook.

The dependencies of the target cookbook and it's provision cookbook obviously differ, but it's unclear to me how to manage the _./provision _ dependencies. Ideally I could just specify a chef export or berks vendor dump referenced from my _./provision
_ cookbook somehow.

Either way, I would like to place dependencies in ./provision/metadata.rb and use chef install ; chef update ; chef provision --sync flow to run the provision cookbook.

However chef provision fails to pick up the dependencies:

[app_server_cookbook]$ grep depends ./provision/metadata.rb                                                                                                                                                                     
depends 'dnsimple'

[app_server_cookbook]$ chef provision ticket_12345 --sync
Uploading policy to policy group ticket_12345
Using    app_server          0.1.0   (0fe40946)
...clipping...
Using    chef-sugar          3.3.0   (edbd3c51)
Using    postgresql          4.0.6   (e8eef761)
Installing Cookbook Gems:
Compiling Cookbooks...
Error: Could not find cookbook(s) to satisfy run list ["recipe[provision::default]"] in /home/devops/workspace/chris/chef-repo/site-cookbooks/app_server_cookbook
Reason: (Chef::Exceptions::CookbookNotFound) Cookbook dnsimple not found. If you're loading dnsimple from another cookbook, make sure you configure the dependency in your metadata

Cheers,
@hippiehacker

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant