Bento is a project that encapsulates Packer templates for building Vagrant baseboxes. We use these boxes internally at Opscode for testing Hosted Enterprise Chef, Private Enterprise Chef and our open source cookbooks via test-kitchen.
These basebox templates were converted from veewee definitions originally based on work done by Tim Dysinger to make "Don't Repeat Yourself" (DRY) modular baseboxes. Thanks Tim!
The following baseboxes are publicly available and were built using this project. Note that our baseboxes no longer include Chef Client. Vagrant can be instructed to install Chef at runtime using the vagrant-omnibus plugin.
64-bit boxes:
- opscode-centos-5.9
- opscode-centos-6.4
- opscode-debian-7.1.0
- opscode-fedora-18
- opscode-fedora-19
- opscode-ubuntu-10.04
- opscode-ubuntu-12.04
- opscode-ubuntu-13.04
32-bit boxes:
- opscode-centos-5.9-i386
- opscode-centos-6.4-i386
- opscode-debian-7.1.0-i386
- opscode-ubuntu-10.04-i386
- opscode-ubuntu-12.04-i386
Older baseboxes include Chef.
The following base boxes were built with Chef 11.4.4.
64-bit boxes:
32-bit boxes:
The following base boxes were built with Chef 11.4.0.
64-bit boxes:
32-bit boxes:
The following base boxes were built with Chef 11.2.0. (No 32-bit boxes were built for Chef 11.2.0.)
The following base boxes were built with Chef 10.18.2.
- opscode-centos-5.8-i386
- opscode-centos-5.8
- opscode-centos-6.3-i386
- opscode-centos-6.3
- opscode-ubuntu-10.04-i386
- opscode-ubuntu-10.04
- opscode-ubuntu-12.04-i386
- opscode-ubuntu-12.04
The following base boxes were built with Chef 10.14.4.
- opscode-centos-5.8-i386
- opscode-centos-5.8
- opscode-centos-6.3-i386
- opscode-centos-6.3
- opscode-ubuntu-10.04
- opscode-ubuntu-10.04-i386
- opscode-ubuntu-12.04
- opscode-ubuntu-12.04-i386
First, install Packer and then clone this project.
Inside the packer
directory, a JSON file describes each box that can be built. You can use packer build
to build the
boxes.
$ packer build debian-7.2.0-i386.json
If you want to use a another mirror site, use mirror variable.
$ packer build -var 'mirror=http://ftp.jaist.ac.jp/pub/Linux/debian-cdimage/release' debian-7.2.0-i386.json
If you only have VMware or VirtualBox available, you may also tell Packer to build only that box.
$ packer build -only=virtualbox debian-7.2.0-i386.json
Congratulations! You now have ./debian-7.2.0-i386-virtualbox.box
and ./debian-7.2.0-i386-vmware.box
, fully-functional
baseboxes that you can then add to Vagrant and start testing cookbooks.
The legacy veewee definitions are still in the "definitions" directory. These are unsupported and will be removed in the future.
Packer does not yet support Windows, so the veewee definitions are still used for building those boxes. You must build these boxes yourself due to licensing constraints. You can build these as follows:
$ bundle install
$ bundle exec veewee vbox build [definition-name]
Use the issue tracker to report bugs, features or other issues.
How to contribute to Opscode open source software projects
- Author:: Seth Chisamore ([email protected])
- Author:: Stephen Delano ([email protected])
- Author:: Joshua Timberman ([email protected])
- Author:: Tim Dysinger ([email protected])
- Author:: Chris McClimans ([email protected])
- Author:: Julian Dunn ([email protected])
- Author:: Tom Duffield ([email protected])
- Author:: Ross Timson ([email protected])
- Copyright:: 2012-2013, Opscode, Inc ([email protected])
- Copyright:: 2011-2012, Tim Dysinger ([email protected])
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.