Infrastructure configs and automation for Kosmos servers
Go to file
Basti ec75f1446c
Use chef-workstation Ruby with rbenv
See https://github.com/docwhat/rbenv-chef-workstation for painlessly
using Chef Workstation's Ruby with rbenv.
2021-05-28 14:40:02 +02:00
.chef Whitelist ejabberd custom node attributes 2020-12-11 19:07:06 +01:00
clients Remove postgres-1 server 2021-01-23 17:11:45 +01:00
cookbooks Add updated upstream nodejs cookbook 2021-04-09 13:18:35 +02:00
data_bags Deploy hubot with new hubot-kredits 2021-03-30 12:11:03 +02:00
doc Update ejabberd doc 2020-12-08 13:13:05 +01:00
environments WIP 2020-08-16 16:18:01 +02:00
nodes Update the barnard node file after running Chef 2021-03-30 12:12:27 +02:00
roles Set up Zerotier Control UI 2021-02-07 17:44:08 +01:00
scripts Merge pull request 'Add script for notifying Kosmos channels from Ruby' (#279) from feature/notify_xmpp_from_ruby into master 2021-01-25 10:59:05 +00:00
site-cookbooks Upgrade Gitea from 1.13.1 to 1.13.7 2021-04-10 11:00:00 +02:00
.gitignore Set up an instance of Mastodon for Kosmos 2017-04-06 21:20:51 +02:00
.gitmodules Use our own fork of the postgresql cookbook 2020-06-07 12:29:34 +02:00
.ruby-version Use chef-workstation Ruby with rbenv 2021-05-28 14:40:02 +02:00
Berksfile Upgrade nodejs to the latest version from the repo 2021-03-30 13:58:55 +02:00
Berksfile.lock Upgrade nodejs to the latest version from the repo 2021-03-30 13:58:55 +02:00
Gemfile Update Chef to 15.3.14 2019-10-08 18:17:34 +02:00
Gemfile.lock Don't require old bundler version 2021-05-28 14:36:07 +02:00
README.md Add commands for running Chef against VMs 2020-12-10 23:39:59 +01:00
Vagrantfile Suggest bitcoin source recipe for dev 2020-08-19 15:28:00 +02:00

README.md

Install 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