Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A sample app illustrating the proper way to use chef.
JavaScript Ruby
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.bundle Vagrant stuff
bin Vagrant stuff
config/cookbooks Vagrant stuff
public Update
test Moved test files to test directory
vendor Vagrant stuff
views
.gitignore Vagrant stuff
Gemfile Vagrant stuff
Gemfile.lock Vagrant stuff
README This should be obvious, I suppose.
Vagrantfile Vagrant stuff
config.ru hello there
news.rb Vagrant stuff

README

This is a sample application used to illustrate how to use chef-solo and bundler and vagrant.  

In four commands, you download a new linux VM, configure it with chef-solo, and start up a REE/Sinatra/Unicorn/Bundler iPhone mirror of http://news.ycombinator.com.

You can then edit the chef cookbooks, run one command, and watch the VM use the new cookbooks.


==========================================
INSTRUCTIONS

1.  Install Virtual Box.  http://www.virtualbox.org/wiki/Downloads


2. Checkout source code to project
git clone git://github.com/joevandyk/fixienews.git && cd fixienews


3. Install vagrant gem and download Ubuntu 10.04 (lucid)
gem install vagrant
vagrant box add lucid32 http://files.vagrantup.com/lucid32.box


4. Start the vagrant box, runs chef-solo, starts up the services
vagrant up
==========================================




And that's it!  Go to http://192.168.10.35:8080 to view it.  Preferably with an iPhone.

The key files to look at:
Vagrantfile
config/cookbooks/vagrant_main/recipes/default.rb

You can now edit the recipe file and run "vagrant provision" in the root project directory, and you can see how the cookbooks will run.

The gems (nokogiri, rack, unicorn, sinatra) have been bundled in the vendor directory via bundler 1.0.  No installation of the gems is necessary on the VM -- the only gem that's necessary to install is bundler (and it's installed via chef).
Something went wrong with that request. Please try again.