kitchenplan/kitchenplan — pull request #88 by leftathome (2014-07-09 23:58:45+00:00)
Title: Travis-based functional/unit tests, multi-platform/multi-resolver support.

Here's a massive world-breaking pull request to review and discuss! It's been in flight for many months so there's a bit of drift from the development work on Version 3.

What you get:
* Windows support (see go.bat.).
* Linux support (RedHat / CentOS lightly tested on some internal VMs, seems to work).
* Completely decoupled config directory from app.
* Berkshelf and Librarian support across platforms.
* Leakily-written (but effective) unit test coverage for most of the Kitchenplan application code.
* Fully functioning Travis CI testing for Berkshelf and Librarian on OS X workers.

Windows support may have gotten a bit wobbly when I started refactoring based on the feedback from Travis, which wasn't possible until I got the OK to put this code up on GitHub last month. If anyone has any trouble on that platform, try reverting back to b46ccfe ...

GitHub auto-merge seems to be failing on a couple of commonly-modified files (go, .travis.yml, badge URLs in the README, a couple docstrings in lib/kitchenplan/config, etc.), but this should be a relatively painless merge if you choose to accept it. This version should also lend itself very well to gem packaging and running under CI...