rsolo is a simple tool which runs chef-solo
on a remote host.
it can do:
- install chef on remote host
- run chef-solo on remote host
rsolo is a shell-script version of knife-solo
.
# At first , install Chef on the remote host
$ rsolo prepare user@remote
# Second, run chef-solo
$ rsolo cook user@remote
install Chef on the remote host by the omnibus installer.
upload kitchen(in other words, chef-repo) to a remote host and run sudo chef-solo
over there.
just do the same thing as below when you have installed Berkshelf
$ rm -rf cookbooks Berksfile.lock
$ berks vendor cookbooks
This is a very unique feature.
It creates a cookbook name helloworld
, and do prepare
+ cook -o helloworld
it automatically.
If You has a node json file nodes/vagrant.json
, you can just do
$ rsolo prepare --vagrant
$ rsolo cook --vagrant
Or if you want to use another json file (e.g. nodes/foo.json )
$ rsolo prepare --vagrant -N foo
$ rsolo cook --vagrant -N foo
$ curl -sO https://raw.githubusercontent.com/DQNEO/rsolo/master/rsolo
$ chmod 0755 ./rsolo
# if you would like to install globally
$ sudo mv rsolo /usr/local/bin/
Bash version 3.2 or later
gem knife-solo
is a great tool, but I don't want to care about ruby tools like gem, bunlder.
rsolo is a zero dependency tool. It's just a BASH script.
besides, knife-solo
has too complicated options.
I am tired of doing lik this:
$ knife solo cook --no-berkshelf --no-chef-check -F tmpconfig hostname nodes/hostname.json
In rsolo
, you can do this:
$ rsolo cook -F tmpconfig -N nodename hostname
GPL v3
@DQNEO
- option
- -o
- --format
- help for subcommands