Easing the building of vagrant boxes
Перейти к файлу
Michal Papis 095dbe95a5 Merge pull request #1054 from n0ts/fix_fission
Fix fission
2015-04-17 01:55:39 +02:00
.bundle moved em-winrm to a seperate bundle group to achieve ruby-1.8.7 compatibility 2013-04-03 16:05:23 +02:00
bin Exit with a non-zero exit code if something goes wrong 2014-01-30 15:56:13 +01:00
doc update .ruby-version to ruby-2.2.1, and update the documentation 2015-03-08 18:14:03 +01:00
lib Fix all_running: uninitialized constant Fission::Action 2015-04-12 14:47:49 +09:00
templates archlinux-x86_64 Non-X.org VirtualBox Guest Additions 2015-04-16 17:33:58 +03:00
test use to_s instead of string from MatchData, fix #1011, update #989 2014-11-01 22:26:43 +01:00
validation bye bye cucumber 2013-02-19 13:36:41 +01:00
.gitattributes Create .gitattributes to solve #805 2014-03-17 13:35:41 +11:00
.gitignore move to .ruby-version 2014-10-25 16:56:31 +02:00
.ruby-gemset move to .ruby-version 2014-10-25 16:56:31 +02:00
.ruby-version update .ruby-version to ruby-2.2.1, and update the documentation 2015-03-08 18:14:03 +01:00
.travis.yml Revert "check vbox version before doing anything" 2014-11-01 00:13:06 +01:00
CONTRIBUTE.md Documentation syntax fix: howto create and checkout a new_patch branch 2013-10-03 15:24:39 -07:00
Gemfile fix the installation issue with the eventmachine gem 2015-03-08 17:34:48 +01:00
License update license year to 2012 2012-02-04 10:43:14 +01:00
README.md Add veewee parallels export command. 2013-09-21 14:59:25 +02:00
Rakefile Removed duplicate install task in Rakefile. Cutes the instal time into half. 2013-03-06 17:31:35 +01:00
veewee.gemspec use gem-content to load templates via gem metadata 2014-10-20 13:52:03 +02:00

README.md

Veewee

Build Status

Veewee is a tool for easily (and repeatedly) building custom Vagrant base boxes, KVMs, and virtual machine images.

About Vagrant

Vagrant is a great tool for creating and configuring lightweight, reproducible, portable virtual machine environments - often used with the addition of automation tools such as Chef or Puppet.

The first step to build a new virtual machine is to download an existing 'base box'. I believe this scares a lot of people as they don't know how these unverified boxes were built. Therefore a lot of people end up building their own base box which is often time consuming and cumbersome. Veewee aims to automate all the steps for building base boxes and to collect best practices in a transparent way.

Veewee's Supported VM Providers

Veewee isn't only for Vagrant. It currently supports exporting VM images for the following providers:

Getting Started

Before you start, we recommend reading through these pages:

Next, learn about Veewee fundamentals:

Then depending on how you want to use Veewee, we suggest to read through one of the following guides:

Major noteworthy changes between versions can be found here:

A complete list of all docs can be found by viewing the doc directory.

Veewee Commands

Below is an overview of the veewee command options:

$ bundle exec veewee

# Commands:
#   veewee add_share       # Adds a Share to the Guest
#   veewee fusion          # Subcommand for Vmware fusion
#   veewee help [COMMAND]  # Describe available commands or one specific command
#   veewee kvm             # Subcommand for KVM
#   veewee parallels       # Subcommand for Parallels
#   veewee vbox            # Subcommand for VirtualBox
#   veewee version         # Prints the Veewee version information

Learn how to avoid typing bundle exec by visiting the Commands doc.

Veewee Provider Subcommands

Below is an overview of the veewee provider subcommand options:

$ bundle exec veewee <provider>

# Commands:
#   veewee <provider> build [BOX_NAME]                 # Build box
#   veewee <provider> copy [BOXNAME] [SRC] [DST]       # Copy a file to the VM
#   veewee <provider> define [BOXNAME] [TEMPLATE]      # Define a new basebox starting from a template
#   veewee <provider> destroy [BOXNAME]                # Destroys the basebox that was built
#   veewee <provider> halt [BOXNAME]                   # Activates a shutdown on the basebox
#   veewee <provider> help [COMMAND]                   # Describe subcommands or one specific subcommand
#   veewee <provider> list                             # Lists all defined boxes
#   veewee <provider> ostypes                          # List the available Operating System types
#   veewee <provider> screenshot [NAME] [PNGFILENAME]  # Takes a screenshot of the box
#   veewee <provider> ssh [BOXNAME] [COMMAND]          # Interactive ssh login
#   veewee <provider> templates                        # List the currently available templates
#   veewee <provider> undefine [BOXNAME]               # Removes the definition of a basebox
#   veewee <provider> up [BOXNAME]                     # Starts a Box
#   veewee <provider> validate [NAME]                  # Validates a box against vagrant compliancy rules
#   veewee <provider> winrm [BOXNAME] [COMMAND]        # Execute command via winrm

Contribute

People have reported good experiences, why don't you give it a try?

If you have a setup working, share your 'definition' with me. That would be fun!

See CONTRIBUTE.md.