3 releases (stable)

Uses old Rust 2015

2.1.0 Feb 5, 2017
2.0.0 Feb 5, 2017
0.1.0 Jan 22, 2017

#5 in #chef

MIT license

10KB
242 lines

k2so

Deploys your software -- The captain said I have to

The purpose of this crate is to assist with deployments and infrastructure changes performed via Chef.

When using knife solo it requires some arguments passed in such as IP address and the role name. To ensure that the right machine gets provisioned with the right cookbook this tool lets the user define roles upfront which then can be used afterwards to perform deployments and/or infrastructure changes in an easy way.

Usage

This requires the following tools to be installed:

First, a new mapping between role and IP address has to be defined:

$ k2so add 192.168.33.10 app

This maps the address 192.168.33.10 to the app role. If that role already existed before, it gets overwritten automatically.

Then execute these commands as well:

$ k2so add_user root
$ k2so add_key keys/id_rsa

These two configure the user which shall be used to connect and the ssh key. These are global for all configured roles.

Then if that's done, the actual deploy can be performed:

$ k2so deploy app

which then runs the app cookbooks on the configured app machine.

Dependencies

~1.5MB
~23K SLoC