lib/omnibus/templates/README.md.erb in omnibus-2.0.0 vs lib/omnibus/templates/README.md.erb in omnibus-2.0.1

- old
+ new

@@ -1,33 +1,33 @@ -# <%= config[:name] %> Omnibus project - +<%= config[:name] %> Omnibus project +<%= '='*(config[:name].length + 16) %> This project creates full-stack platform-specific packages for `<%= config[:name] %>`! -## Installation +Installation +------------ +You must have a sane Ruby 1.9+ environment with Bundler installed. Ensure all +the required gems are installed: -We'll assume you have Ruby 1.9+ and Bundler installed. First ensure all -required gems are installed and ready to use: - ```shell $ bundle install --binstubs ``` -## Usage - +Usage +----- ### Build You create a platform-specific package using the `build project` command: ```shell $ bin/omnibus build project <%= config[:name] %> ``` The platform/architecture type of the package created will match the platform -where the `build project` command is invoked. So running this command on say a -MacBook Pro will generate a Mac OS X specific package. After the build -completes packages will be available in `pkg/`. +where the `build project` command is invoked. For example, running this command +on a MacBook Pro will generate a Mac OS X package. After the build completes +packages will be available in the `pkg/` folder. ### Clean You can clean up all temporary files generated during the build process with the `clean` command: @@ -51,52 +51,44 @@ ```shell $ bin/omnibus help ``` -## Vagrant-based Virtualized Build Lab - +Kitchen-based Build Environment +------------------------------- Every Omnibus project ships will a project-specific [Berksfile](http://berkshelf.com/) and [Vagrantfile](http://www.vagrantup.com/) -that will allow you to build your projects on the following platforms: +that will allow you to build your omnibus projects on all of the projects listed +in the `.kitchen.yml`. You can add/remove additional platforms as needed by +changing the list found in the `.kitchen.yml` `platforms` YAML stanza. -* CentOS 5 64-bit -* CentOS 6 64-bit -* Ubuntu 10.04 64-bit -* Ubuntu 11.04 64-bit -* Ubuntu 12.04 64-bit +This build environment is designed to get you up-and-running quickly. However, +there is nothing that restricts you to building on other platforms. Simply use +the [omnibus cookbook](https://github.com/opscode-cookbooks/omnibus) to setup +your desired platform and execute the build steps listed above. -Please note this build-lab is only meant to get you up and running quickly; -there's nothing inherent in Omnibus that restricts you to just building CentOS -or Ubuntu packages. See the Vagrantfile to add new platforms to your build lab. +The default build environment requires Test Kitchen and VirtualBox for local +development. Test Kitchen also exposes the ability to provision instances using +various cloud providers like AWS, DigitalOcean, or OpenStack. For more +information, please see the [Test Kitchen documentation](http://kitchen.ci). -The only requirements for standing up this virtualized build lab are: +Once you have tweaked your `.kitchen.yml` (or `.kitchen.local.yml`) to your +liking, you can bring up an individual build environment using the `kitchen` +command. -* VirtualBox - native packages exist for most platforms and can be downloaded -from the [VirtualBox downloads page](https://www.virtualbox.org/wiki/Downloads). -* Vagrant 1.2.1+ - native packages exist for most platforms and can be downloaded -from the [Vagrant downloads page](http://downloads.vagrantup.com/). - -The [vagrant-berkshelf](https://github.com/RiotGames/vagrant-berkshelf) and -[vagrant-omnibus](https://github.com/schisamo/vagrant-omnibus) Vagrant plugins -are also required and can be installed easily with the following commands: - ```shell -$ vagrant plugin install vagrant-berkshelf -$ vagrant plugin install vagrant-omnibus +$ bundle exec kitchen converge ubuntu-12.04 ``` -Once the pre-requisites are installed you can build your package across all -platforms with the following command: +Then login to the instance and build the project as described in the Usage +section: ```shell -$ vagrant up +$ bundle exec kitchen login ubuntu-12.04 +[vagrant@ubuntu...] $ cd <%= config[:name] %> +[vagrant@ubuntu...] $ bundle install +[vagrant@ubuntu...] $ ... +[vagrant@ubuntu...] $ ./bin/omnibus build project <%= config[:name] %> ``` -If you would like to build a package for a single platform the command looks like this: - -```shell -$ vagrant up PLATFORM -``` - -The complete list of valid platform names can be viewed with the -`vagrant status` command. +For a complete list of all commands and platforms, run `kitchen list` or +`kitchen help`.