Infrastructure automation code for Kosmos servers
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
greg 9ec1fe1db4 Merge pull request 'Add PostgreSQL primary server support to the mastodon cookbook' (#187) from feature/186-postgresql_primary_mastodon into master 4 days ago
.chef Move the generate options to config.rb at the root of the repo 6 months ago
clients Add the new Hetzner server, 3 weeks ago
cookbooks Update apt to 7.3.0 3 weeks ago
data_bags Create an initial encfs cookbook 1 month ago
doc Improve LDAP example command 2 months ago
environments Enable LDAP support on mediawiki 5 months ago
nodes Add the postgresql_replica role to draco 3 weeks ago
roles Add a postgresql_client role 4 weeks ago
site-cookbooks Connect to the PostgreSQL primary server instead of localhost 2 weeks ago
.gitignore Set up an instance of Mastodon for Kosmos 3 years ago
.gitmodules Use our own fork of the postgresql cookbook 1 month ago
Berksfile Update apt to 7.3.0 3 weeks ago
Berksfile.lock Update apt to 7.3.0 3 weeks ago
Gemfile Update Chef to 15.3.14 9 months ago
Gemfile.lock Update Chef to 15.3.14 9 months ago Add the command to update Chef Client 9 months ago
Vagrantfile Add encfs to Vagrantfile 1 month ago

Install dependencies

bundle install

Run Chef Solo

knife zero converge

Update Chef Client on a server:

knife zero converge --client-version 15.3.14

Bootstrap a new server

knife zero bootstrap --run-list "recipe[kosmos-base],..." -j '{"example_cookbook":{"memory_max":"256M"}}' --secret-file .chef/encrypted_data_bag_secret

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