solid

A Net/SSH library that connects to application servers and executes a dna.json on the server with chef-solo.

Requirements

  • Ruby

  • RubyGems

  • net/ssh

Install

gem install solid

Download Source

github.com/jackhq/solid

What is it?

Solid is a command line interface that takes a dna.json file as an argument. It uses this file to establish a ssh connection for each of the application servers specified in the document either by user/key or user/password connections. Then it simply looks for chef-solo, if not available, it installs chef, if available it runs chef-solo, with the dna.json file.

What is a dna.json file?

It is a file that contains instructions for chef on how to setup and configure your servers, and applications. To learn more go to opscode.com

How to use

  • Create your dna.json file

  • Make sure it has the following root attributes:

    • servers - array of uris or ip addresses

    • ssh-auth - (key|pwd) - type ssh authentication

    • key - if ssh authentication is key based

    • pwd - if ssh authentication is pwd based

  • Execute

solid dna.json

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Thing-3. See LICENSE for details.