Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mitchellh/virtualbox
[ABANDONED] Create and modify virtual machines in VirtualBox using pure ruby.
https://github.com/mitchellh/virtualbox
Last synced: 3 months ago
JSON representation
[ABANDONED] Create and modify virtual machines in VirtualBox using pure ruby.
- Host: GitHub
- URL: https://github.com/mitchellh/virtualbox
- Owner: mitchellh
- License: mit
- Archived: true
- Created: 2010-01-23T00:06:58.000Z (almost 15 years ago)
- Default Branch: master
- Last Pushed: 2011-12-22T22:36:42.000Z (almost 13 years ago)
- Last Synced: 2024-07-18T23:34:19.816Z (4 months ago)
- Language: Ruby
- Homepage: http://mitchellh.github.com/virtualbox/
- Size: 2.08 MB
- Stars: 244
- Watchers: 14
- Forks: 45
- Open Issues: 15
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
**This gem is no longer under active development. Please do not use it.**
I've decided to stop developing this library since the main user of the library
and the purpose it was created (Vagrant) no longer makes use of it. The reasoning
behind this is because the `win32ole` support on Windows is simply painful and
doesn't support all the features necessary to fully support the VirtualBox
API.If you're interested in maintaining this gem, please contact me (mitchellh).
# VirtualBox Ruby Gem
The VirtualBox ruby gem is a library which allows anyone to control VirtualBox
from ruby code! Create, destroy, start, stop, suspend, and resume virtual machines.
Also list virtual machines, list hard drives, network devices, etc.## Installation and Requirements
First you need to install [VirtualBox](http://www.virtualbox.org/) which is available for
Windows, Linux, and OS X. After installation, install the gem:sudo gem install virtualbox
The gem uses the native COM interface with VirtualBox provides to communicate with
VirtualBox. On Windows, this is globally available. On Linux-based machines, the gem
uses Ruby-FFI to talk to a dynamic library. No configuration should be necessary.## Basic Usage
The virtualbox gem is modeled after ActiveRecord. If you've used ActiveRecord, you'll
feel very comfortable using the virtualbox gem.There is a [quick getting started guide](http://mitchellh.github.com/virtualbox/file.GettingStarted.html) to
get you acquainted with the conventions of the virtualbox gem.Complete documentation can be found at [http://mitchellh.github.com/virtualbox](http://mitchellh.github.com/virtualbox).
Below are some examples:
require 'virtualbox'
vm = VirtualBox::VM.find("my-vm")
# Let's first print out some basic info about the VM
puts "Memory: #{vm.memory_size}"# Let's modify the memory and name...
vm.memory_size = 360
vm.name = "my-renamed-vm"# Save it!
vm.save## Known Issues or Uncompleted Features
VirtualBox has a _ton_ of features! As such, this gem is still not totally complete.
You can see the features that are still left to do in the TODO file.## Reporting Bugs or Feature Requests
Please use the [issue tracker](https://github.com/mitchellh/virtualbox/issues).
## Contributing
If you'd like to contribute to VirtualBox, the first step to developing is to
clone this repo, get [bundler](http://github.com/carlhuda/bundler) if you
don't have it already, and do the following:bundle install --relock
rakeThis will run the test suite, which should come back all green! Then you're good to go!
## Special Thanks
These folks went above and beyond with contributions to the virtualbox gem, and
for that, I have to say "thanks!"* [Kieran Pilkington](http://github.com/KieranP)
* [Aleksey Palazhchenko](http://github.com/AlekSi)