问题
Given I started working with Chef using the Chef Server Management Console and I now want to start using a files and upload them via knife. Is there a way to retrive roles and environments that are stored on the ChefServer via knife, so I can them into git?
回答1:
You can use the knife environment list
and knife environment show
commands to download environments and replace "environment" with "role" to do the same for roles.
mkdir environments
for env in `knife environment list`; do
knife environment show $env --format=json > environments/$env.json
done
You can then check these JSON files into git and edit/upload with knife.
回答2:
You mentioned cookbooks in your title, but not your post.
if you want to download cookbooks, knife cookbook download NAME
works. Put it in a for loop like Tim Potter did and you get all your cookbooks.
来源:https://stackoverflow.com/questions/10756347/download-roles-and-cookbooks-from-chefserver-with-knife