I’m trying to do something that should be really simple:
- Create “dev” and “prod” environments
- Specify a couple of attributes that go with each
- Bootstrap a remote node with “prod” environment
The documentation (http://wiki.opscode.com/display/chef/Environments)
suggests that you can create ‘dev.rb’ and ‘prod.rb’ in the environments
directory, then run ‘rake install’ to upload these to the chef server.
However, various comments on that page indicate that this is incorrect.
So, how do you manage environment-specific attributes? Isn’t this the
whole purpose of environments? I really want to manage them through local
text files - not running commands on the chef server - if possible.
Secondly, how do you then specify that a node should be ‘prod’? I tried
- Bootstrap node
- knife edit node xxxx
- Run chef-client on node
It failed with a 403 error, but possibly because the environment was not
properly registered in the first place. Is this the right approach?