Basti abec4be8ff | ||
---|---|---|
.chef | ||
clients | ||
cookbooks | ||
data_bags | ||
doc | ||
environments | ||
nodes | ||
roles | ||
scripts | ||
site-cookbooks | ||
.gitignore | ||
.gitmodules | ||
.ruby-version | ||
Berksfile | ||
Berksfile.lock | ||
Gemfile | ||
Gemfile.lock | ||
README.md | ||
Vagrantfile |
README.md
Install Chef Workstation
- macOS, Windows, RHEL, Ubuntu: https://docs.chef.io/workstation/install_workstation/
- Arch Linux: https://aur.archlinux.org/packages/chef-workstation
rbenv
If you use rbenv to manage Ruby versions on your system, install the (rbenv-chef-workstation)[https://github.com/docwhat/rbenv-chef-workstation] plugin.
Install gem dependencies
bundle install
Bootstrap a new server
knife zero bootstrap root@dev.kosmos.org --run-list "recipe[kosmos-base],..." -j '{"example_cookbook":{"memory_max":"256M"}}' --secret-file .chef/encrypted_data_bag_secret
Bootstrap a new VM
knife zero bootstrap ubuntu@zerotier-ip-address -x ubuntu --sudo --run-list "recipe[kosmos-base]" --secret-file .chef/encrypted_data_bag_secret
Run Chef Zero
knife zero converge name:dev.kosmos.org
Run Chef Zero on a VM
knife zero converge -a knife_zero.host name:vm-name-23
Update Chef Client on a server:
knife zero converge name:dev.kosmos.org --client-version 15.3.14
Managing cookbooks
Cookbooks are managed via Berkshelf. Run berks --help
for command help.
Install cookbooks listed in Berksfile:
berks install
Vendor installed cookbooks to the cookbooks/
dir:
berks vendor cookbooks/ --delete