2 tier demo go app using test-kitchen, chef, rspec, & friends
- chefdk 0.9.0
- virtualbox 5.0.6
- vagrant 1.7.3
- infrataster 0.3.1 (via
bundle install
orchef gem install
)
$ rake
This will carry out the following:
- Style & lint check using Foodcritic & Rubocop
- Build 3 nodes (2 app, 1 web) using Kitchen, Vagrant, & Chef-zero
- Verify those nodes using Kitchen & Serverspec
- Integration test the app using Infrataster and Rspec
A full list of commands with short summaries can be found using:
$ rake -T
Useful commands:
$ rake build # kitchen converge all nodes, will update application code
$ rake verify # kitchen verify all nodes
$ rake destroy # clean up all nodes
Application code can be found in files/default/sainsburys.go
.
rake build (or any other converge) will rebuild the executable whenever this file is updated.
Developed & tested on OSX - may not function as expected on other OS workstations. That said, there's a good chance everything apart from the integration test will work fine cross platform.
Alongside the usual suspects, the following were used for reference: