veewee 0.3.0.alpha4 → 0.3.0.alpha5
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -0
- data/.rvmrc +3 -2
- data/Gemfile +1 -1
- data/License +1 -1
- data/README.md +30 -174
- data/Rakefile +4 -2
- data/doc/README-changes.txt +19 -0
- data/doc/TODO +60 -0
- data/doc/definition.md +58 -0
- data/doc/fusion.md +2 -0
- data/doc/install.md +16 -0
- data/doc/installation.md +24 -0
- data/doc/kvm.md +2 -0
- data/doc/providers.md +23 -0
- data/doc/requirements.md +1 -0
- data/doc/running.md +83 -0
- data/doc/template.md +102 -0
- data/doc/vagrant.md +119 -0
- data/doc/vbox.md +2 -0
- data/lib/net/vnc/vnc.rb +1 -1
- data/lib/python/parallels_sdk_check.py +19 -0
- data/lib/python/parallels_send_key.py +73 -0
- data/lib/veewee/command.rb +2 -1
- data/lib/veewee/command/kvm.rb +55 -15
- data/lib/veewee/command/parallels.rb +124 -0
- data/lib/veewee/command/vagrant.rb +2 -106
- data/lib/veewee/command/vagrant/basebox.rb +82 -0
- data/lib/veewee/command/vagrant/build.rb +64 -0
- data/lib/veewee/command/vagrant/define.rb +48 -0
- data/lib/veewee/command/vagrant/destroy.rb +47 -0
- data/lib/veewee/command/vagrant/export.rb +44 -0
- data/lib/veewee/command/vagrant/halt.rb +43 -0
- data/lib/veewee/command/vagrant/list.rb +38 -0
- data/lib/veewee/command/vagrant/ostypes.rb +38 -0
- data/lib/veewee/command/vagrant/ssh.rb +39 -0
- data/lib/veewee/command/vagrant/templates.rb +39 -0
- data/lib/veewee/command/vagrant/undefine.rb +41 -0
- data/lib/veewee/command/vagrant/up.rb +44 -0
- data/lib/veewee/command/virtualbox.rb +61 -14
- data/lib/veewee/command/vmfusion.rb +44 -21
- data/lib/veewee/config.rb +0 -27
- data/lib/veewee/config/ostypes.yml +179 -43
- data/lib/veewee/config/vmfusion-ostypes.txt +1 -0
- data/lib/veewee/definition.rb +91 -35
- data/lib/veewee/definitions.rb +156 -0
- data/lib/veewee/environment.rb +80 -244
- data/lib/veewee/error.rb +12 -0
- data/lib/veewee/provider/core/box.rb +52 -0
- data/lib/veewee/provider/core/box/build.rb +229 -0
- data/lib/veewee/provider/core/box/exec.rb +34 -0
- data/lib/veewee/provider/core/box/floppy.rb +31 -0
- data/lib/veewee/provider/core/box/halt.rb +24 -0
- data/lib/veewee/provider/core/box/issh.rb +15 -0
- data/lib/veewee/provider/core/box/poweroff.rb +12 -0
- data/lib/veewee/provider/core/box/scp.rb +29 -0
- data/lib/veewee/provider/core/box/ssh.rb +95 -0
- data/lib/veewee/provider/core/box/sudo.rb +21 -0
- data/lib/veewee/{builder → provider}/core/box/vnc.rb +4 -4
- data/lib/veewee/provider/core/helper/iso.rb +142 -0
- data/lib/veewee/provider/core/helper/scancode.rb +114 -0
- data/lib/veewee/provider/core/helper/shell.rb +55 -0
- data/lib/veewee/provider/core/helper/ssh.rb +162 -0
- data/lib/veewee/provider/core/helper/tcp.rb +96 -0
- data/lib/veewee/provider/core/helper/web.rb +67 -0
- data/lib/veewee/{builder/core/builder.rb → provider/core/provider.rb} +8 -25
- data/lib/veewee/{builder/core/builder → provider/core/provider}/transaction.rb +0 -0
- data/lib/veewee/{builder/core/builder → provider/core/provider}/tunnel.rb +2 -2
- data/lib/veewee/provider/kvm/box.rb +46 -0
- data/lib/veewee/provider/kvm/box/build.rb +11 -0
- data/lib/veewee/provider/kvm/box/create.rb +76 -0
- data/lib/veewee/provider/kvm/box/destroy.rb +33 -0
- data/lib/veewee/provider/kvm/box/halt.rb +19 -0
- data/lib/veewee/provider/kvm/box/helper/console_type.rb +20 -0
- data/lib/veewee/provider/kvm/box/helper/ip.rb +14 -0
- data/lib/veewee/provider/kvm/box/helper/ssh_options.rb +19 -0
- data/lib/veewee/provider/kvm/box/helper/status.rb +28 -0
- data/lib/veewee/provider/kvm/box/poweroff.rb +14 -0
- data/lib/veewee/provider/kvm/box/up.rb +14 -0
- data/lib/veewee/provider/kvm/box/validate_kvm.rb +47 -0
- data/lib/veewee/provider/kvm/provider.rb +70 -0
- data/lib/veewee/provider/parallels/box.rb +35 -0
- data/lib/veewee/provider/parallels/box/build.rb +13 -0
- data/lib/veewee/provider/parallels/box/create.rb +63 -0
- data/lib/veewee/provider/parallels/box/destroy.rb +24 -0
- data/lib/veewee/provider/parallels/box/halt.rb +14 -0
- data/lib/veewee/provider/parallels/box/helper/buildinfo.rb +45 -0
- data/lib/veewee/provider/parallels/box/helper/console_type.rb +198 -0
- data/lib/veewee/provider/parallels/box/helper/ip.rb +23 -0
- data/lib/veewee/provider/parallels/box/helper/ssh_options.rb +20 -0
- data/lib/veewee/provider/parallels/box/helper/status.rb +28 -0
- data/lib/veewee/provider/parallels/box/poweroff.rb +14 -0
- data/lib/veewee/provider/parallels/box/ssh.rb +12 -0
- data/lib/veewee/provider/parallels/box/up.rb +15 -0
- data/lib/veewee/provider/parallels/box/validate_parallels.rb +47 -0
- data/lib/veewee/provider/parallels/notes/parallels-sdk.txt +116 -0
- data/lib/veewee/provider/parallels/provider.rb +33 -0
- data/lib/veewee/provider/virtualbox/box.rb +46 -0
- data/lib/veewee/provider/virtualbox/box/build.rb +20 -0
- data/lib/veewee/provider/virtualbox/box/create.rb +58 -0
- data/lib/veewee/provider/virtualbox/box/destroy.rb +66 -0
- data/lib/veewee/provider/virtualbox/box/export_vagrant.rb +99 -0
- data/lib/veewee/provider/virtualbox/box/halt.rb +13 -0
- data/lib/veewee/provider/virtualbox/box/helper/buildinfo.rb +25 -0
- data/lib/veewee/provider/virtualbox/box/helper/console_type.rb +62 -0
- data/lib/veewee/provider/virtualbox/box/helper/create.rb +176 -0
- data/lib/veewee/provider/virtualbox/box/helper/forwarding.rb +38 -0
- data/lib/veewee/provider/virtualbox/box/helper/guest_additions.rb +17 -0
- data/lib/veewee/provider/virtualbox/box/helper/ip.rb +19 -0
- data/lib/veewee/provider/virtualbox/box/helper/natinterface.rb +17 -0
- data/lib/veewee/provider/virtualbox/box/helper/ssh_options.rb +28 -0
- data/lib/veewee/provider/virtualbox/box/helper/status.rb +27 -0
- data/lib/veewee/provider/virtualbox/box/helper/version.rb +18 -0
- data/lib/veewee/provider/virtualbox/box/poweroff.rb +19 -0
- data/lib/veewee/provider/virtualbox/box/ssh.rb +13 -0
- data/lib/veewee/provider/virtualbox/box/up.rb +48 -0
- data/lib/veewee/provider/virtualbox/box/validate_vagrant.rb +53 -0
- data/lib/veewee/provider/virtualbox/provider.rb +19 -0
- data/lib/veewee/provider/vmfusion/box.rb +67 -0
- data/lib/veewee/provider/vmfusion/box/build.rb +13 -0
- data/lib/veewee/{builder/vmfusion/helper → provider/vmfusion/box}/create.rb +15 -24
- data/lib/veewee/provider/vmfusion/box/destroy.rb +20 -0
- data/lib/veewee/provider/vmfusion/box/export_ova.rb +49 -0
- data/lib/veewee/provider/vmfusion/box/halt.rb +13 -0
- data/lib/veewee/provider/vmfusion/box/helper/buildinfo.rb +43 -0
- data/lib/veewee/provider/vmfusion/box/helper/console_type.rb +18 -0
- data/lib/veewee/provider/vmfusion/box/helper/ip.rb +19 -0
- data/lib/veewee/provider/vmfusion/box/helper/ssh_options.rb +20 -0
- data/lib/veewee/provider/vmfusion/box/helper/status.rb +20 -0
- data/lib/veewee/provider/vmfusion/box/helper/vnc.rb +61 -0
- data/lib/veewee/provider/vmfusion/box/poweroff.rb +13 -0
- data/lib/veewee/provider/vmfusion/box/ssh.rb +12 -0
- data/lib/veewee/{builder/vmfusion/helper → provider/vmfusion/box}/template.rb +9 -4
- data/lib/veewee/{builder/vmfusion/helper → provider/vmfusion/box}/template.vmx.erb +5 -2
- data/lib/veewee/provider/vmfusion/box/up.rb +18 -0
- data/lib/veewee/provider/vmfusion/box/validate_vmfusion.rb +47 -0
- data/lib/veewee/{builder → provider}/vmfusion/info/export_ovf.info +0 -0
- data/lib/veewee/provider/vmfusion/provider.rb +20 -0
- data/lib/veewee/providers.rb +31 -0
- data/lib/veewee/template.rb +26 -0
- data/lib/veewee/templates.rb +71 -0
- data/lib/veewee/ui.rb +6 -4
- data/lib/veewee/version.rb +1 -1
- data/templates/CentOS-4.8-i386/postinstall.sh +1 -1
- data/templates/CentOS-5.5-i386-netboot/definition.rb +16 -0
- data/templates/CentOS-5.5-i386-netboot/ks.cfg +46 -0
- data/templates/CentOS-5.5-i386-netboot/postinstall.sh +60 -0
- data/templates/CentOS-5.5-x86_64-netboot/definition.rb +1 -1
- data/templates/CentOS-5.5-x86_64-netboot/postinstall.sh +1 -1
- data/templates/CentOS-5.6-i386-netboot/definition.rb +1 -1
- data/templates/CentOS-5.6-i386-netboot/ks.cfg +2 -2
- data/templates/CentOS-5.6-i386-netboot/postinstall.sh +21 -9
- data/templates/CentOS-5.6-i386/postinstall.sh +1 -1
- data/templates/CentOS-5.6-x86_64-netboot/definition.rb +1 -1
- data/templates/CentOS-5.6-x86_64-netboot/ks.cfg +1 -1
- data/templates/CentOS-5.6-x86_64-netboot/postinstall.sh +1 -1
- data/templates/CentOS-5.7-i386-netboot/postinstall.sh +3 -3
- data/templates/CentOS-5.7-x86_64-netboot/postinstall.sh +1 -1
- data/templates/CentOS-6.0-i386-netboot/ks.cfg +3 -2
- data/templates/CentOS-6.0-i386-netboot/postinstall.sh +1 -1
- data/templates/CentOS-6.0-i386/ks.cfg +2 -1
- data/templates/CentOS-6.0-i386/postinstall.sh +1 -1
- data/templates/CentOS-6.0-x86_64-minimal/definition.rb +2 -2
- data/templates/CentOS-6.0-x86_64-minimal/ks.cfg +2 -1
- data/templates/CentOS-6.0-x86_64-minimal/postinstall.sh +17 -4
- data/templates/CentOS-6.0-x86_64-netboot/ks.cfg +4 -2
- data/templates/CentOS-6.0-x86_64-netboot/postinstall.sh +1 -1
- data/templates/CentOS-6.0-x86_64/base.sh +12 -0
- data/templates/CentOS-6.0-x86_64/chef.sh +2 -0
- data/templates/CentOS-6.0-x86_64/cleanup.sh +4 -0
- data/templates/CentOS-6.0-x86_64/definition.rb +22 -8
- data/templates/CentOS-6.0-x86_64/ks.cfg +2 -1
- data/templates/CentOS-6.0-x86_64/postinstall.sh +1 -1
- data/templates/CentOS-6.0-x86_64/puppet.sh +11 -0
- data/templates/CentOS-6.0-x86_64/ruby.sh +2 -0
- data/templates/CentOS-6.0-x86_64/vagrant.sh +9 -0
- data/templates/CentOS-6.0-x86_64/virtualbox.sh +8 -0
- data/templates/CentOS-6.1-x86_64-minimal/base.sh +13 -0
- data/templates/CentOS-6.1-x86_64-minimal/chef.sh +2 -0
- data/templates/CentOS-6.1-x86_64-minimal/cleanup.sh +4 -0
- data/templates/CentOS-6.1-x86_64-minimal/definition.rb +39 -0
- data/templates/CentOS-6.1-x86_64-minimal/ks.cfg +47 -0
- data/templates/CentOS-6.1-x86_64-minimal/puppet.sh +11 -0
- data/templates/CentOS-6.1-x86_64-minimal/ruby.sh +2 -0
- data/templates/CentOS-6.1-x86_64-minimal/vagrant.sh +16 -0
- data/templates/CentOS-6.1-x86_64-minimal/virtualbox.sh +8 -0
- data/templates/CentOS-6.1-x86_64-netboot/base.sh +13 -0
- data/templates/CentOS-6.1-x86_64-netboot/chef.sh +2 -0
- data/templates/CentOS-6.1-x86_64-netboot/cleanup.sh +4 -0
- data/templates/CentOS-6.1-x86_64-netboot/definition.rb +39 -0
- data/templates/CentOS-6.1-x86_64-netboot/ks.cfg +46 -0
- data/templates/CentOS-6.1-x86_64-netboot/postinstall.sh +48 -0
- data/templates/CentOS-6.1-x86_64-netboot/puppet.sh +11 -0
- data/templates/CentOS-6.1-x86_64-netboot/ruby.sh +2 -0
- data/templates/CentOS-6.1-x86_64-netboot/vagrant.sh +16 -0
- data/templates/CentOS-6.1-x86_64-netboot/virtualbox.sh +8 -0
- data/templates/CentOS-6.2-x86_64-minimal/base.sh +14 -0
- data/templates/CentOS-6.2-x86_64-minimal/chef.sh +3 -0
- data/templates/CentOS-6.2-x86_64-minimal/cleanup.sh +5 -0
- data/templates/CentOS-6.2-x86_64-minimal/definition.rb +39 -0
- data/templates/CentOS-6.2-x86_64-minimal/ks.cfg +39 -0
- data/templates/CentOS-6.2-x86_64-minimal/puppet.sh +12 -0
- data/templates/CentOS-6.2-x86_64-minimal/ruby.sh +3 -0
- data/templates/CentOS-6.2-x86_64-minimal/vagrant.sh +17 -0
- data/templates/CentOS-6.2-x86_64-minimal/virtualbox.sh +8 -0
- data/templates/CentOS-6.2-x86_64-netboot/base.sh +13 -0
- data/templates/CentOS-6.2-x86_64-netboot/chef.sh +2 -0
- data/templates/CentOS-6.2-x86_64-netboot/cleanup.sh +4 -0
- data/templates/CentOS-6.2-x86_64-netboot/definition.rb +39 -0
- data/templates/CentOS-6.2-x86_64-netboot/ks.cfg +46 -0
- data/templates/CentOS-6.2-x86_64-netboot/postinstall.sh +48 -0
- data/templates/CentOS-6.2-x86_64-netboot/puppet.sh +11 -0
- data/templates/CentOS-6.2-x86_64-netboot/ruby.sh +2 -0
- data/templates/CentOS-6.2-x86_64-netboot/vagrant.sh +16 -0
- data/templates/CentOS-6.2-x86_64-netboot/virtualbox.sh +8 -0
- data/templates/Debian-5.0.8-amd64-netboot/base.sh +9 -0
- data/templates/Debian-5.0.8-amd64-netboot/chef.sh +2 -0
- data/templates/Debian-5.0.8-amd64-netboot/cleanup.sh +10 -0
- data/templates/Debian-5.0.8-amd64-netboot/postinstall.sh +1 -1
- data/templates/Debian-5.0.8-amd64-netboot/puppet.sh +2 -0
- data/templates/Debian-5.0.8-amd64-netboot/ruby.sh +11 -0
- data/templates/Debian-5.0.8-amd64-netboot/vagrant.sh +14 -0
- data/templates/Debian-5.0.8-amd64-netboot/virtualbox.sh +15 -0
- data/templates/Debian-5.0.8-i386-netboot/base.sh +9 -0
- data/templates/Debian-5.0.8-i386-netboot/chef.sh +2 -0
- data/templates/Debian-5.0.8-i386-netboot/cleanup.sh +10 -0
- data/templates/Debian-5.0.8-i386-netboot/postinstall.sh +1 -1
- data/templates/Debian-5.0.8-i386-netboot/puppet.sh +2 -0
- data/templates/Debian-5.0.8-i386-netboot/ruby.sh +11 -0
- data/templates/Debian-5.0.8-i386-netboot/vagrant.sh +14 -0
- data/templates/Debian-5.0.8-i386-netboot/virtualbox.sh +15 -0
- data/templates/Debian-6.0.3-amd64-netboot/base.sh +13 -0
- data/templates/Debian-6.0.3-amd64-netboot/chef.sh +2 -0
- data/templates/Debian-6.0.3-amd64-netboot/cleanup-virtualbox.sh +2 -0
- data/templates/Debian-6.0.3-amd64-netboot/cleanup.sh +18 -0
- data/templates/{Debian-6.0.2-amd64-netboot → Debian-6.0.3-amd64-netboot}/definition.rb +5 -4
- data/templates/Debian-6.0.3-amd64-netboot/postinstall.sh +80 -0
- data/templates/{Debian-6.0.2-amd64-netboot → Debian-6.0.3-amd64-netboot}/preseed.cfg +0 -0
- data/templates/Debian-6.0.3-amd64-netboot/puppet.sh +2 -0
- data/templates/Debian-6.0.3-amd64-netboot/ruby.sh +10 -0
- data/templates/Debian-6.0.3-amd64-netboot/vagrant.sh +25 -0
- data/templates/Debian-6.0.3-amd64-netboot/virtualbox.sh +15 -0
- data/templates/Debian-6.0.3-amd64-netboot/zerodisk.sh +3 -0
- data/templates/Debian-6.0.3-i386-netboot/base.sh +13 -0
- data/templates/Debian-6.0.3-i386-netboot/chef.sh +2 -0
- data/templates/Debian-6.0.3-i386-netboot/cleanup-virtualbox.sh +2 -0
- data/templates/Debian-6.0.3-i386-netboot/cleanup.sh +18 -0
- data/templates/{Debian-6.0.2-i386-netboot → Debian-6.0.3-i386-netboot}/definition.rb +3 -3
- data/templates/{Debian-6.0.2-i386-netboot → Debian-6.0.3-i386-netboot}/postinstall.sh +1 -4
- data/templates/{Debian-6.0.2-i386-netboot → Debian-6.0.3-i386-netboot}/preseed.cfg +0 -0
- data/templates/Debian-6.0.3-i386-netboot/puppet.sh +2 -0
- data/templates/Debian-6.0.3-i386-netboot/ruby.sh +10 -0
- data/templates/Debian-6.0.3-i386-netboot/vagrant.sh +25 -0
- data/templates/Debian-6.0.3-i386-netboot/virtualbox.sh +15 -0
- data/templates/Debian-6.0.3-i386-netboot/zerodisk.sh +3 -0
- data/templates/Debian-6.0.4-amd64-netboot/base.sh +13 -0
- data/templates/Debian-6.0.4-amd64-netboot/chef.sh +2 -0
- data/templates/Debian-6.0.4-amd64-netboot/cleanup-virtualbox.sh +4 -0
- data/templates/Debian-6.0.4-amd64-netboot/cleanup.sh +17 -0
- data/templates/Debian-6.0.4-amd64-netboot/definition.rb +49 -0
- data/templates/Debian-6.0.4-amd64-netboot/preseed.cfg +315 -0
- data/templates/Debian-6.0.4-amd64-netboot/puppet.sh +2 -0
- data/templates/Debian-6.0.4-amd64-netboot/ruby.sh +10 -0
- data/templates/Debian-6.0.4-amd64-netboot/vagrant.sh +21 -0
- data/templates/Debian-6.0.4-amd64-netboot/virtualbox.sh +13 -0
- data/templates/Debian-6.0.4-amd64-netboot/zerodisk.sh +3 -0
- data/templates/Debian-6.0.4-i386-netboot/base.sh +13 -0
- data/templates/Debian-6.0.4-i386-netboot/chef.sh +2 -0
- data/templates/Debian-6.0.4-i386-netboot/cleanup-virtualbox.sh +4 -0
- data/templates/Debian-6.0.4-i386-netboot/cleanup.sh +17 -0
- data/templates/Debian-6.0.4-i386-netboot/definition.rb +51 -0
- data/templates/Debian-6.0.4-i386-netboot/preseed.cfg +315 -0
- data/templates/Debian-6.0.4-i386-netboot/puppet.sh +2 -0
- data/templates/Debian-6.0.4-i386-netboot/ruby.sh +10 -0
- data/templates/Debian-6.0.4-i386-netboot/vagrant.sh +21 -0
- data/templates/Debian-6.0.4-i386-netboot/virtualbox.sh +13 -0
- data/templates/Debian-6.0.4-i386-netboot/zerodisk.sh +3 -0
- data/templates/Fedora-14-amd64-netboot/postinstall.sh +1 -1
- data/templates/Fedora-14-amd64/postinstall.sh +1 -1
- data/templates/Fedora-14-i386-netboot/postinstall.sh +1 -1
- data/templates/Fedora-14-i386/postinstall.sh +1 -1
- data/templates/Fedora-15-x86_64-netboot/definition.rb +29 -0
- data/templates/Fedora-15-x86_64-netboot/ks.cfg +64 -0
- data/templates/Fedora-15-x86_64-netboot/postinstall.sh +33 -0
- data/templates/Fedora-16-i386/definition.rb +17 -0
- data/templates/Fedora-16-i386/ks.cfg +72 -0
- data/templates/Fedora-16-i386/postinstall.sh +35 -0
- data/templates/Fedora-16-x86_64/definition.rb +17 -0
- data/templates/Fedora-16-x86_64/ks.cfg +72 -0
- data/templates/Fedora-16-x86_64/postinstall.sh +35 -0
- data/templates/SLES-11-SP1-DVD-i586-GM/autoinst_de.xml +1127 -0
- data/templates/SLES-11-SP1-DVD-i586-GM/autoinst_en.xml +1127 -0
- data/templates/SLES-11-SP1-DVD-i586-GM/definition.rb +37 -0
- data/templates/SLES-11-SP1-DVD-i586-GM/postinstall.sh +43 -0
- data/templates/SLES-11-SP1-DVD-x86_64-GM/autoinst_de.xml +1171 -0
- data/templates/SLES-11-SP1-DVD-x86_64-GM/autoinst_en.xml +1171 -0
- data/templates/SLES-11-SP1-DVD-x86_64-GM/definition.rb +37 -0
- data/templates/SLES-11-SP1-DVD-x86_64-GM/postinstall.sh +43 -0
- data/templates/archlinux-i386-netboot/aif.cfg +8 -14
- data/templates/archlinux-i386-netboot/definition.rb +4 -7
- data/templates/archlinux-i386-netboot/postinstall.sh +5 -17
- data/templates/archlinux-i386-netboot/postinstall2.sh +3 -1
- data/templates/archlinux-i386/postinstall.sh +1 -1
- data/templates/archlinux-x86_64-netboot/aif.cfg +8 -14
- data/templates/archlinux-x86_64-netboot/definition.rb +4 -7
- data/templates/archlinux-x86_64-netboot/postinstall.sh +1 -16
- data/templates/archlinux-x86_64-netboot/postinstall2.sh +3 -1
- data/templates/archlinux-x86_64/postinstall.sh +1 -1
- data/templates/freebsd-8.2-pcbsd-i386-netboot/definition.rb +5 -3
- data/templates/freebsd-8.2-pcbsd-i386-netboot/postinstall.sh +1 -1
- data/templates/freebsd-8.2-pcbsd-i386/definition.rb +3 -2
- data/templates/freebsd-8.2-pcbsd-i386/postinstall.sh +1 -1
- data/templates/funtoo-latest-generic_64-stable/definition.rb +34 -0
- data/templates/funtoo-latest-generic_64-stable/postinstall.sh +177 -0
- data/templates/funtoo-latest-generic_64-stable/postinstall2.sh +83 -0
- data/templates/gentoo-latest-i386-experimental/definition.rb +6 -6
- data/templates/gentoo-latest-i386-experimental/postinstall.sh +1 -1
- data/templates/gentoo-latest-x86_64-experimental/definition.rb +34 -0
- data/templates/gentoo-latest-x86_64-experimental/postinstall.sh +214 -0
- data/templates/openSUSE-11.4-DVD-i586/postinstall.sh +6 -1
- data/templates/openSUSE-11.4-DVD-x86_64/postinstall.sh +6 -1
- data/templates/openSUSE-11.4-NET-i586/postinstall.sh +6 -1
- data/templates/openSUSE-11.4-NET-x86_64/postinstall.sh +6 -1
- data/templates/openSUSE-12.1-DVD+NET-i586/autoinst_de.xml +1483 -0
- data/templates/openSUSE-12.1-DVD+NET-i586/autoinst_en.xml +1483 -0
- data/templates/openSUSE-12.1-DVD+NET-i586/definition.rb +44 -0
- data/templates/openSUSE-12.1-DVD+NET-i586/postinstall.sh +48 -0
- data/templates/openSUSE-12.1-DVD+NET-x86_64/autoinst_de.xml +1727 -0
- data/templates/openSUSE-12.1-DVD+NET-x86_64/autoinst_en.xml +1727 -0
- data/templates/openSUSE-12.1-DVD+NET-x86_64/definition.rb +44 -0
- data/templates/openSUSE-12.1-DVD+NET-x86_64/postinstall.sh +48 -0
- data/templates/openbsd50_amd64/README +28 -0
- data/templates/openbsd50_amd64/definition.rb +84 -0
- data/templates/openbsd50_amd64/postinstall.sh +81 -0
- data/templates/openbsd50_i386/README +28 -0
- data/templates/openbsd50_i386/definition.rb +84 -0
- data/templates/openbsd50_i386/postinstall.sh +80 -0
- data/templates/openindiana-148-ai-x86/definition.rb +1 -1
- data/templates/openindiana-148-ai-x86/postinstall.sh +1 -1
- data/templates/opensuse-11.4-i386-experimental/postinstall.sh +1 -1
- data/templates/scientificlinux-6.1-i386-netboot/base.sh +1 -0
- data/templates/scientificlinux-6.1-i386-netboot/chef.sh +1 -0
- data/templates/scientificlinux-6.1-i386-netboot/cleanup.sh +4 -0
- data/templates/scientificlinux-6.1-i386-netboot/definition.rb +35 -0
- data/templates/scientificlinux-6.1-i386-netboot/ks.cfg +53 -0
- data/templates/scientificlinux-6.1-i386-netboot/postinstall.sh +30 -0
- data/templates/scientificlinux-6.1-i386-netboot/puppet.sh +1 -0
- data/templates/scientificlinux-6.1-i386-netboot/vagrant.sh +8 -0
- data/templates/scientificlinux-6.1-i386-netboot/virtualbox.sh +8 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/base.sh +1 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/chef.sh +1 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/cleanup.sh +4 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/definition.rb +35 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/ks.cfg +53 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/postinstall.sh +30 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/puppet.sh +1 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/vagrant.sh +8 -0
- data/templates/scientificlinux-6.1-x86_64-netboot/virtualbox.sh +8 -0
- data/templates/solaris-11-express-i386/definition.rb +1 -1
- data/templates/solaris-11-express-i386/postinstall.sh +1 -1
- data/templates/ubuntu-10.04.2-amd64-netboot/postinstall.sh +12 -11
- data/templates/ubuntu-10.04.2-server-i386-netboot/postinstall.sh +12 -11
- data/templates/ubuntu-10.04.3-server-amd64-alt/definition.rb +2 -2
- data/templates/ubuntu-10.04.3-server-amd64-alt/postinstall.sh +12 -11
- data/templates/ubuntu-10.04.3-server-amd64/vagrant.sh +1 -1
- data/templates/ubuntu-10.04.3-server-i386/postinstall.sh +12 -11
- data/templates/ubuntu-10.04.4-server-amd64/definition.rb +24 -0
- data/templates/ubuntu-10.04.4-server-amd64/postinstall.sh +92 -0
- data/templates/ubuntu-10.04.4-server-amd64/preseed.cfg +87 -0
- data/templates/ubuntu-10.04.4-server-i386/definition.rb +24 -0
- data/templates/ubuntu-10.04.4-server-i386/postinstall.sh +92 -0
- data/templates/ubuntu-10.04.4-server-i386/preseed.cfg +87 -0
- data/templates/ubuntu-10.10-server-amd64-netboot/postinstall.sh +12 -11
- data/templates/ubuntu-10.10-server-amd64/postinstall.sh +12 -11
- data/templates/ubuntu-10.10-server-i386-netboot/postinstall.sh +12 -11
- data/templates/ubuntu-10.10-server-i386/postinstall.sh +12 -11
- data/templates/ubuntu-11.04-server-amd64/ssh-keys.sh +1 -1
- data/templates/ubuntu-11.04-server-i386/definition.rb +1 -1
- data/templates/ubuntu-11.04-server-i386/postinstall.sh +12 -11
- data/templates/ubuntu-11.10-server-amd64-ishaya/definition.rb +24 -0
- data/templates/ubuntu-11.10-server-amd64-ishaya/postinstall.sh +91 -0
- data/templates/ubuntu-11.10-server-amd64-ishaya/preseed.cfg +87 -0
- data/templates/ubuntu-11.10-server-amd64-ruby192/definition.rb +24 -0
- data/templates/ubuntu-11.10-server-amd64-ruby192/postinstall.sh +91 -0
- data/templates/ubuntu-11.10-server-amd64-ruby192/preseed.cfg +87 -0
- data/templates/ubuntu-11.10-server-amd64-rvm/definition.rb +35 -0
- data/templates/ubuntu-11.10-server-amd64-rvm/postinstall.sh +85 -0
- data/templates/ubuntu-11.10-server-amd64-rvm/preseed.cfg +93 -0
- data/templates/ubuntu-11.10-server-amd64/definition.rb +35 -0
- data/templates/ubuntu-11.10-server-amd64/postinstall.sh +89 -0
- data/templates/ubuntu-11.10-server-amd64/preseed.cfg +87 -0
- data/templates/ubuntu-11.10-server-i386/definition.rb +35 -0
- data/templates/ubuntu-11.10-server-i386/postinstall.sh +89 -0
- data/templates/ubuntu-11.10-server-i386/preseed.cfg +87 -0
- data/templates/ubuntu-12.04-server-amd64-packages/definition.rb +37 -0
- data/templates/{Debian-6.0.2-amd64-netboot → ubuntu-12.04-server-amd64-packages}/postinstall.sh +33 -32
- data/templates/ubuntu-12.04-server-amd64-packages/preseed.cfg +87 -0
- data/templates/ubuntu-12.04-server-amd64/definition.rb +37 -0
- data/templates/ubuntu-12.04-server-amd64/postinstall.sh +92 -0
- data/templates/ubuntu-12.04-server-amd64/preseed.cfg +87 -0
- data/templates/ubuntu-8.04.4-server-amd64/definition.rb +1 -0
- data/templates/ubuntu-8.04.4-server-amd64/postinstall.sh +19 -17
- data/templates/ubuntu-8.04.4-server-amd64/preseed.cfg +0 -1
- data/templates/ubuntu-8.04.4-server-i386/definition.rb +1 -1
- data/templates/ubuntu-8.04.4-server-i386/postinstall.sh +34 -11
- data/templates/windows-2008R1-serverstandard-amd64/Autounattend.xml +146 -0
- data/templates/windows-2008R1-serverstandard-amd64/README.md +134 -0
- data/templates/windows-2008R1-serverstandard-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R1-serverstandard-amd64/definition.rb +114 -0
- data/templates/windows-2008R1-serverstandard-amd64/install-cygwin-sshd.bat +41 -0
- data/templates/windows-2008R1-serverstandard-amd64/install-guest-additions.bat +5 -0
- data/templates/windows-2008R1-serverstandard-amd64/install-winrm.bat +16 -0
- data/templates/windows-2008R1-serverstandard-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R1-serverstandard-amd64/postinstall.sh +75 -0
- data/templates/windows-2008R1-serverstandard-amd64/sudo +2 -0
- data/templates/windows-2008R1-serverstandard-amd64/winrm.rb +8 -0
- data/templates/windows-2008R1-serverweb-amd64/Autounattend.xml +162 -0
- data/templates/windows-2008R1-serverweb-amd64/README.md +134 -0
- data/templates/windows-2008R1-serverweb-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R1-serverweb-amd64/definition.rb +131 -0
- data/templates/windows-2008R1-serverweb-amd64/install-cygwin-sshd.bat +40 -0
- data/templates/windows-2008R1-serverweb-amd64/install-guest-additions.bat +5 -0
- data/templates/windows-2008R1-serverweb-amd64/install-vbox-guest.bat +2 -0
- data/templates/windows-2008R1-serverweb-amd64/install-winrm.bat +16 -0
- data/templates/windows-2008R1-serverweb-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R1-serverweb-amd64/postinstall.sh +74 -0
- data/templates/windows-2008R1-serverweb-amd64/sudo +2 -0
- data/templates/windows-2008R1-serverweb-amd64/winrm.rb +8 -0
- data/templates/windows-2008R1-serverweb-i386/Autounattend.xml +142 -0
- data/templates/windows-2008R1-serverweb-i386/README.md +136 -0
- data/templates/windows-2008R1-serverweb-i386/cygwin-setup.exe +0 -0
- data/templates/windows-2008R1-serverweb-i386/definition.rb +132 -0
- data/templates/windows-2008R1-serverweb-i386/install-cygwin-sshd.bat +40 -0
- data/templates/windows-2008R1-serverweb-i386/install-vbox-guest.bat +2 -0
- data/templates/windows-2008R1-serverweb-i386/install-winrm.bat +14 -0
- data/templates/windows-2008R1-serverweb-i386/oracle-cert.cer +0 -0
- data/templates/windows-2008R1-serverweb-i386/postinstall.sh +74 -0
- data/templates/windows-2008R1-serverweb-i386/sudo +2 -0
- data/templates/windows-2008R1-serverweb-i386/winrm.rb +8 -0
- data/templates/windows-2008R1-serverwebcore-amd64/Autounattend.xml +162 -0
- data/templates/windows-2008R1-serverwebcore-amd64/README.md +134 -0
- data/templates/windows-2008R1-serverwebcore-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R1-serverwebcore-amd64/definition.rb +132 -0
- data/templates/windows-2008R1-serverwebcore-amd64/install-cygwin-sshd.bat +41 -0
- data/templates/windows-2008R1-serverwebcore-amd64/install-vbox-guest.bat +2 -0
- data/templates/windows-2008R1-serverwebcore-amd64/install-winrm.bat +14 -0
- data/templates/windows-2008R1-serverwebcore-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R1-serverwebcore-amd64/postinstall.sh +74 -0
- data/templates/windows-2008R1-serverwebcore-amd64/sudo +2 -0
- data/templates/windows-2008R1-serverwebcore-amd64/winrm.rb +8 -0
- data/templates/windows-2008R2-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R2-amd64/install-winrm.bat +2 -0
- data/templates/windows-2008R2-amd64/postinstall.sh +1 -1
- data/templates/windows-2008R2-serverstandard-amd64/Autounattend.xml +147 -0
- data/templates/windows-2008R2-serverstandard-amd64/README.md +142 -0
- data/templates/windows-2008R2-serverstandard-amd64/definition.rb +43 -0
- data/templates/windows-2008R2-serverstandard-amd64/install-cygwin-sshd.bat +41 -0
- data/templates/windows-2008R2-serverstandard-amd64/install-winrm.bat +11 -0
- data/templates/windows-2008R2-serverstandard-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R2-serverstandard-amd64/postinstall.sh +74 -0
- data/templates/windows-2008R2-serverweb-amd64/Autounattend.xml +151 -0
- data/templates/windows-2008R2-serverweb-amd64/README.md +142 -0
- data/templates/windows-2008R2-serverweb-amd64/definition.rb +38 -0
- data/templates/windows-2008R2-serverweb-amd64/install-cygwin-sshd.bat +40 -0
- data/templates/windows-2008R2-serverweb-amd64/install-vbox-guest.bat +2 -0
- data/templates/windows-2008R2-serverweb-amd64/install-winrm.bat +11 -0
- data/templates/windows-2008R2-serverweb-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R2-serverweb-amd64/postinstall.sh +74 -0
- data/templates/windows-2008R2-serverwebcore-amd64/Autounattend.xml +145 -0
- data/templates/windows-2008R2-serverwebcore-amd64/README.md +142 -0
- data/templates/windows-2008R2-serverwebcore-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R2-serverwebcore-amd64/definition.rb +46 -0
- data/templates/windows-2008R2-serverwebcore-amd64/install-cygwin-sshd.bat +41 -0
- data/templates/windows-2008R2-serverwebcore-amd64/install-vbox-guest.bat +2 -0
- data/templates/windows-2008R2-serverwebcore-amd64/install-winrm.bat +11 -0
- data/templates/windows-2008R2-serverwebcore-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R2-serverwebcore-amd64/postinstall.sh +74 -0
- data/templates/windows-7-enterprise-amd64/Autounattend.xml +155 -0
- data/templates/windows-7-enterprise-amd64/README.md +52 -0
- data/templates/windows-7-enterprise-amd64/definition.rb +40 -0
- data/templates/windows-7-enterprise-amd64/install-cygwin-sshd.bat +40 -0
- data/templates/windows-7-enterprise-amd64/install-vbox-guest.bat +2 -0
- data/templates/windows-7-enterprise-amd64/install-winrm.bat +14 -0
- data/templates/windows-7-enterprise-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-enterprise-amd64/postinstall.sh +74 -0
- data/templates/windows-7-enterprise-i386/Autounattend.xml +151 -0
- data/templates/windows-7-enterprise-i386/README.md +169 -0
- data/templates/windows-7-enterprise-i386/definition.rb +40 -0
- data/templates/windows-7-enterprise-i386/install-cygwin-sshd.bat +40 -0
- data/templates/windows-7-enterprise-i386/install-winrm.bat +14 -0
- data/templates/windows-7-enterprise-i386/oracle-cert.cer +0 -0
- data/templates/windows-7-enterprise-i386/postinstall.sh +74 -0
- data/templates/windows-7-premium-amd64/Autounattend.xml +152 -0
- data/templates/windows-7-premium-amd64/README.md +171 -0
- data/templates/windows-7-premium-amd64/definition.rb +38 -0
- data/templates/windows-7-premium-amd64/install-chefclient.bat +44 -0
- data/templates/windows-7-premium-amd64/install-winrm.bat +11 -0
- data/templates/windows-7-premium-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-premium-amd64/postinstall.sh +124 -0
- data/templates/windows-7-premium-amd64/winrm.rb +8 -0
- data/templates/windows-7-professional-amd64/Autounattend.xml +152 -0
- data/templates/windows-7-professional-amd64/README.md +171 -0
- data/templates/windows-7-professional-amd64/definition.rb +41 -0
- data/templates/windows-7-professional-amd64/install-cygwin-sshd.bat +40 -0
- data/templates/windows-7-professional-amd64/install-winrm.bat +14 -0
- data/templates/windows-7-professional-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-professional-amd64/postinstall.sh +74 -0
- data/templates/windows-7-ultimate-amd64/Autounattend.xml +152 -0
- data/templates/windows-7-ultimate-amd64/README.md +89 -0
- data/templates/windows-7-ultimate-amd64/definition.rb +41 -0
- data/templates/windows-7-ultimate-amd64/install-cygwin-sshd.bat +40 -0
- data/templates/windows-7-ultimate-amd64/install-winrm.bat +14 -0
- data/templates/windows-7-ultimate-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-ultimate-amd64/postinstall.sh +74 -0
- data/templates/windows-7sp1-ultimate-amd64/Autounattend.xml +149 -0
- data/templates/windows-7sp1-ultimate-amd64/README.md +89 -0
- data/templates/windows-7sp1-ultimate-amd64/definition.rb +42 -0
- data/templates/windows-7sp1-ultimate-amd64/install-cygwin-sshd.bat +40 -0
- data/templates/windows-7sp1-ultimate-amd64/install-winrm.bat +14 -0
- data/templates/windows-7sp1-ultimate-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7sp1-ultimate-amd64/postinstall.sh +74 -0
- data/templates/windows-8-preview-dev-amd64/Autounattend.xml +140 -0
- data/templates/windows-8-preview-dev-amd64/README.md +134 -0
- data/templates/windows-8-preview-dev-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-8-preview-dev-amd64/definition.rb +114 -0
- data/templates/windows-8-preview-dev-amd64/install-cygwin-sshd.bat +38 -0
- data/templates/windows-8-preview-dev-amd64/install-winrm.bat +11 -0
- data/templates/windows-8-preview-dev-amd64/oracle-cert.cer +0 -0
- data/templates/windows-8-preview-dev-amd64/postinstall.sh +122 -0
- data/templates/windows-8-preview-dev-amd64/winrm.rb +8 -0
- data/test/build_realtest.rb +71 -0
- data/test/definition_test.rb +3 -3
- data/test/definitions/test_definition/_disabled_postinstall.sh +1 -0
- data/test/definitions/test_definition/definition.rb +14 -17
- data/test/definitions/test_definition/enabled_postinstall.sh +1 -0
- data/test/environment_test.rb +4 -4
- data/validation/features/steps/{ssh_steps.rb → ssh_steps.old} +0 -0
- data/validation/features/steps/veewee_steps.rb +27 -0
- data/validation/veewee.feature +45 -0
- data/veewee.gemspec +18 -11
- metadata +500 -175
- data/Gemfile.lock +0 -98
- data/README-LIB.md +0 -2
- data/lib/veewee/builder/core/box.rb +0 -32
- data/lib/veewee/builder/core/builder/build.rb +0 -250
- data/lib/veewee/builder/core/builder/iso.rb +0 -120
- data/lib/veewee/builder/kvm/box.rb +0 -130
- data/lib/veewee/builder/kvm/builder.rb +0 -38
- data/lib/veewee/builder/virtualbox/box.rb +0 -121
- data/lib/veewee/builder/virtualbox/builder.rb +0 -48
- data/lib/veewee/builder/virtualbox/helper/_snapshots.rb +0 -105
- data/lib/veewee/builder/virtualbox/helper/_transaction.rb +0 -135
- data/lib/veewee/builder/virtualbox/helper/console_type.rb +0 -62
- data/lib/veewee/builder/virtualbox/helper/create.rb +0 -210
- data/lib/veewee/builder/virtualbox/helper/destroy.rb +0 -79
- data/lib/veewee/builder/virtualbox/helper/export_vagrant.rb +0 -87
- data/lib/veewee/builder/virtualbox/helper/validate_vagrant.rb +0 -35
- data/lib/veewee/builder/vmfusion/box.rb +0 -137
- data/lib/veewee/builder/vmfusion/builder.rb +0 -78
- data/lib/veewee/builder/vmfusion/helper/export_ova.rb +0 -26
- data/lib/veewee/builder/vmfusion/helper/validate_vmfusion.rb +0 -37
- data/lib/veewee/config/builders.rb +0 -36
- data/lib/veewee/util/scancode.rb +0 -112
- data/lib/veewee/util/shell.rb +0 -42
- data/lib/veewee/util/ssh.rb +0 -158
- data/lib/veewee/util/tcp.rb +0 -88
- data/lib/veewee/util/web.rb +0 -63
- data/lib/veewee/vagrant/config.rb +0 -7
- data/test/build_test.rb +0 -50
- data/test/definitions/test_definition/_test_me.sh +0 -1
- data/validation/vagrant.feature +0 -68
data/doc/installation.md
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
This needs to be bulked out more, but for now, here is a basic guide to installing Veewee from source.
|
2
|
+
|
3
|
+
First, if you are not using RVM, it's recommended that you do so as veewee will install in it's own gemset which keeps veewee and it's dependancies completely separate from your other Ruby gems.
|
4
|
+
|
5
|
+
RVM is available here: http://beginrescueend.com/
|
6
|
+
|
7
|
+
You can install it as follows:
|
8
|
+
|
9
|
+
$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
|
10
|
+
$ source ~/.bash_profile
|
11
|
+
|
12
|
+
Now, install Ruby 1.9.2 using RVM:
|
13
|
+
|
14
|
+
$ rvm install 1.9.2
|
15
|
+
|
16
|
+
Ok, now that we have RVM installed, you can now install Veewee.
|
17
|
+
|
18
|
+
When you cd into the veewee directory, rvm should automatically read the .rvmrc file and prompt you to verify it - you can do so by pressing Y. This will then create a gemset for veewee.
|
19
|
+
|
20
|
+
$ git clone https://github.com/jedi4ever/veewee.git
|
21
|
+
$ cd veewee
|
22
|
+
$ gem install bundler
|
23
|
+
$ bundle install
|
24
|
+
|
data/doc/kvm.md
ADDED
data/doc/providers.md
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
# Providers in Veewee
|
2
|
+
|
3
|
+
Initially veewee started as provider for virtualbox. From v0.3 Vmware fusion and KVM support are introduced.
|
4
|
+
|
5
|
+
## Virtualbox
|
6
|
+
|
7
|
+
To interact with virtualbox, veewee executes shell-commands through the 'VboxManage' command. The virtualbox gem library proved to be less stable.
|
8
|
+
|
9
|
+
To simulate the typing, veewee uses the 'VBoxManage controlvm 'myubuntu' keyboardputscancode <keycode>'.
|
10
|
+
Scancode are injected directly the keyboard buffer with this. And as this buffer is small, we can't type fast.
|
11
|
+
This is why you have the delay while veewee types the commands. Speeding it up, will make the keyboard buffer loose keystrokes.
|
12
|
+
|
13
|
+
## Vmware fusion
|
14
|
+
|
15
|
+
To interact with Vmware fusion, we leverage (a currently patched) version of [Fission gem](https://github.com/thbishop/fission). This takes care of the heavy lifting.
|
16
|
+
|
17
|
+
To interact with the screen , veewee enables VNC on the created vmware fusion machines and use the [Ruby-VNC gem](http://code.google.com/p/ruby-vnc/) to send the keystrokes. Here too , sending keystrokes too fast is a problem.
|
18
|
+
|
19
|
+
## KVM
|
20
|
+
|
21
|
+
To interact with KVM veewee, uses [libvirt support](http://libvirt.org/ruby/) provided through [Fog gem](http://fog.io) libvirt support
|
22
|
+
|
23
|
+
To interact with the screen , veewee enables VNC on the created vmware fusion machines and use the [Ruby-VNC gem](http://code.google.com/p/ruby-vnc/) to send the keystrokes. Here too , sending keystrokes too fast is a problem.
|
data/doc/requirements.md
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
Coming Soon
|
data/doc/running.md
ADDED
@@ -0,0 +1,83 @@
|
|
1
|
+
# Running veewee
|
2
|
+
|
3
|
+
## Calling veewee
|
4
|
+
|
5
|
+
### Using veewee cli
|
6
|
+
The first way to call veewee is through the 'veewee' cli command:
|
7
|
+
|
8
|
+
$ veewee
|
9
|
+
Tasks:
|
10
|
+
veewee fusion # Subcommand for Vmware fusion
|
11
|
+
veewee help [TASK] # Describe available tasks or one specific task
|
12
|
+
veewee kvm # Subcommand for kvm
|
13
|
+
veewee vbox # Subcommand for virtualbox
|
14
|
+
veewee version # Prints the Veewee version information
|
15
|
+
|
16
|
+
### Using veewee as a vagrant plugin
|
17
|
+
The second way is to use it a vagrant plugin. Veewee registeres itself as a subcommand 'basebox'
|
18
|
+
|
19
|
+
$ vagrant basebox
|
20
|
+
Usage: vagrant basebox <command> [<args>]
|
21
|
+
|
22
|
+
Available subcommands:
|
23
|
+
build
|
24
|
+
define
|
25
|
+
destroy
|
26
|
+
export
|
27
|
+
halt
|
28
|
+
list
|
29
|
+
ostypes
|
30
|
+
ssh
|
31
|
+
templates
|
32
|
+
undefine
|
33
|
+
up
|
34
|
+
|
35
|
+
For help on any individual command run `vagrant basebox COMMAND -h`
|
36
|
+
|
37
|
+
## Available commands
|
38
|
+
|
39
|
+
The following command are available: change the vbox to fusion or kvm if you want to use a different <provider>
|
40
|
+
|
41
|
+
Tasks:
|
42
|
+
veewee vbox build [BOX_NAME] # Build box
|
43
|
+
veewee vbox define [BOXNAME] [TEMPLATE] # Define a new basebox starting fr...
|
44
|
+
veewee vbox destroy [BOXNAME] # Destroys the basebox that was built
|
45
|
+
veewee vbox halt [BOXNAME] # Activates a shutdown on the basebox
|
46
|
+
veewee vbox help [COMMAND] # Describe subcommands or one spec...
|
47
|
+
veewee vbox list # Lists all defined boxes
|
48
|
+
veewee vbox ostypes # List the available Operating Sys...
|
49
|
+
veewee vbox ssh [BOXNAME] [COMMAND] # Shows SSH information
|
50
|
+
veewee vbox templates # List the currently available tem...
|
51
|
+
veewee vbox undefine [BOXNAME] # Removes the definition of a base...
|
52
|
+
veewee vbox up [BOXNAME] # Starts a Box
|
53
|
+
veewee vbox validate [NAME] # Validates a box against vagrant ...
|
54
|
+
|
55
|
+
## Non-Vagrant usage
|
56
|
+
A typical cycle would be:
|
57
|
+
|
58
|
+
$ veewee vbox define 'mybuntu' 'ubuntu-10.10-amd64'
|
59
|
+
$ veewee vbox build 'myubuntu'
|
60
|
+
$ veewee vbox ssh 'myubuntu'
|
61
|
+
$ veewee vbox halt 'myubuntu'
|
62
|
+
$ veewee vbox up 'myubuntu'
|
63
|
+
$ veewee vbox export 'myubuntu'
|
64
|
+
|
65
|
+
## Vagrant usage
|
66
|
+
|
67
|
+
A typical cycle would be:
|
68
|
+
|
69
|
+
$ vagrant basebox define 'myubuntu' 'ubuntu-10.10-amd64'
|
70
|
+
$ vagrant basebox build 'myubuntu'
|
71
|
+
$ vagrant basebox export 'myubuntu'
|
72
|
+
|
73
|
+
$ vagrant basebox add 'myubuntu' 'myubuntu.box'
|
74
|
+
$ vagrant init 'mybuntu'
|
75
|
+
$ vagrant up
|
76
|
+
$ vagrant ssh
|
77
|
+
|
78
|
+
## Exporting a vm
|
79
|
+
The export format depends on the provider:
|
80
|
+
|
81
|
+
- fusion : exports to an 'ova' file
|
82
|
+
- kvm : export to a raw '.img' file
|
83
|
+
- vbox: exports to a '.box' format (for use in vagrant)
|
data/doc/template.md
ADDED
@@ -0,0 +1,102 @@
|
|
1
|
+
# Veewee Template
|
2
|
+
|
3
|
+
## Listing available templates
|
4
|
+
|
5
|
+
Veewee provides templates for a lot of different os-es.
|
6
|
+
|
7
|
+
To see all the templates provided:
|
8
|
+
|
9
|
+
veewee vbox templates
|
10
|
+
|
11
|
+
The following templates are available:
|
12
|
+
veewee vbox define '<box_name>' 'archlinux-i386'
|
13
|
+
veewee vbox define '<box_name>' 'archlinux-i386-netboot'
|
14
|
+
veewee vbox define '<box_name>' 'archlinux-x86_64'
|
15
|
+
veewee vbox define '<box_name>' 'archlinux-x86_64-netboot'
|
16
|
+
veewee vbox define '<box_name>' 'CentOS-4.8-i386'
|
17
|
+
veewee vbox define '<box_name>' 'CentOS-5.5-x86_64-netboot'
|
18
|
+
veewee vbox define '<box_name>' 'CentOS-5.6-i386'
|
19
|
+
veewee vbox define '<box_name>' 'CentOS-5.6-i386-netboot'
|
20
|
+
veewee vbox define '<box_name>' 'CentOS-5.6-x86_64-netboot'
|
21
|
+
veewee vbox define '<box_name>' 'CentOS-5.7-i386-netboot'
|
22
|
+
veewee vbox define '<box_name>' 'CentOS-5.7-x86_64-netboot'
|
23
|
+
veewee vbox define '<box_name>' 'CentOS-6.0-i386'
|
24
|
+
veewee vbox define '<box_name>' 'CentOS-6.0-i386-netboot'
|
25
|
+
veewee vbox define '<box_name>' 'CentOS-6.0-x86_64'
|
26
|
+
veewee vbox define '<box_name>' 'CentOS-6.0-x86_64-minimal'
|
27
|
+
veewee vbox define '<box_name>' 'CentOS-6.0-x86_64-netboot'
|
28
|
+
veewee vbox define '<box_name>' 'CentOS-6.1-x86_64-minimal'
|
29
|
+
veewee vbox define '<box_name>' 'CentOS-6.2-x86_64-minimal'
|
30
|
+
veewee vbox define '<box_name>' 'Debian-5.0.8-amd64-netboot'
|
31
|
+
veewee vbox define '<box_name>' 'Debian-5.0.8-i386-netboot'
|
32
|
+
veewee vbox define '<box_name>' 'Debian-6.0.3-amd64-netboot'
|
33
|
+
veewee vbox define '<box_name>' 'Debian-6.0.3-i386-netboot'
|
34
|
+
veewee vbox define '<box_name>' 'Fedora-14-amd64'
|
35
|
+
veewee vbox define '<box_name>' 'Fedora-14-amd64-netboot'
|
36
|
+
veewee vbox define '<box_name>' 'Fedora-14-i386'
|
37
|
+
veewee vbox define '<box_name>' 'Fedora-14-i386-netboot'
|
38
|
+
veewee vbox define '<box_name>' 'Fedora-15-i386'
|
39
|
+
veewee vbox define '<box_name>' 'Fedora-15-i386-netboot'
|
40
|
+
veewee vbox define '<box_name>' 'Fedora-15-x86_64'
|
41
|
+
veewee vbox define '<box_name>' 'Fedora-15-x86_64-netboot'
|
42
|
+
veewee vbox define '<box_name>' 'Fedora-16-i386'
|
43
|
+
veewee vbox define '<box_name>' 'Fedora-16-x86_64'
|
44
|
+
veewee vbox define '<box_name>' 'freebsd-8.2-experimental'
|
45
|
+
veewee vbox define '<box_name>' 'freebsd-8.2-pcbsd-i386'
|
46
|
+
veewee vbox define '<box_name>' 'freebsd-8.2-pcbsd-i386-netboot'
|
47
|
+
veewee vbox define '<box_name>' 'funtoo-latest-generic_64-stable'
|
48
|
+
veewee vbox define '<box_name>' 'gentoo-latest-i386-experimental'
|
49
|
+
veewee vbox define '<box_name>' 'gentoo-latest-x86_64-experimental'
|
50
|
+
veewee vbox define '<box_name>' 'openbsd50_amd64'
|
51
|
+
veewee vbox define '<box_name>' 'openbsd50_i386'
|
52
|
+
veewee vbox define '<box_name>' 'openindiana-148-ai-x86'
|
53
|
+
veewee vbox define '<box_name>' 'openSUSE-11.4-DVD-i586'
|
54
|
+
veewee vbox define '<box_name>' 'openSUSE-11.4-DVD-x86_64'
|
55
|
+
veewee vbox define '<box_name>' 'opensuse-11.4-i386-experimental'
|
56
|
+
veewee vbox define '<box_name>' 'openSUSE-11.4-NET-i586'
|
57
|
+
veewee vbox define '<box_name>' 'openSUSE-11.4-NET-x86_64'
|
58
|
+
veewee vbox define '<box_name>' 'openSUSE-12.1-DVD+NET-i586'
|
59
|
+
veewee vbox define '<box_name>' 'openSUSE-12.1-DVD+NET-x86_64'
|
60
|
+
veewee vbox define '<box_name>' 'scientificlinux-6.1-i386-netboot'
|
61
|
+
veewee vbox define '<box_name>' 'scientificlinux-6.1-x86_64-netboot'
|
62
|
+
veewee vbox define '<box_name>' 'SLES-11-SP1-DVD-i586-GM'
|
63
|
+
veewee vbox define '<box_name>' 'SLES-11-SP1-DVD-x86_64-GM'
|
64
|
+
veewee vbox define '<box_name>' 'solaris-11-express-i386'
|
65
|
+
veewee vbox define '<box_name>' 'Sysrescuecd-2.0.0-experimental'
|
66
|
+
veewee vbox define '<box_name>' 'ubuntu-10.04.2-amd64-netboot'
|
67
|
+
veewee vbox define '<box_name>' 'ubuntu-10.04.2-server-i386-netboot'
|
68
|
+
veewee vbox define '<box_name>' 'ubuntu-10.04.3-server-amd64'
|
69
|
+
veewee vbox define '<box_name>' 'ubuntu-10.04.3-server-amd64-alt'
|
70
|
+
veewee vbox define '<box_name>' 'ubuntu-10.04.3-server-i386'
|
71
|
+
veewee vbox define '<box_name>' 'ubuntu-10.10-server-amd64'
|
72
|
+
veewee vbox define '<box_name>' 'ubuntu-10.10-server-amd64-netboot'
|
73
|
+
veewee vbox define '<box_name>' 'ubuntu-10.10-server-i386'
|
74
|
+
veewee vbox define '<box_name>' 'ubuntu-10.10-server-i386-netboot'
|
75
|
+
veewee vbox define '<box_name>' 'ubuntu-11.04-server-amd64'
|
76
|
+
veewee vbox define '<box_name>' 'ubuntu-11.04-server-i386'
|
77
|
+
veewee vbox define '<box_name>' 'ubuntu-11.10-server-amd64'
|
78
|
+
veewee vbox define '<box_name>' 'ubuntu-11.10-server-amd64-ishaya'
|
79
|
+
veewee vbox define '<box_name>' 'ubuntu-11.10-server-amd64-ruby192'
|
80
|
+
veewee vbox define '<box_name>' 'ubuntu-11.10-server-i386'
|
81
|
+
veewee vbox define '<box_name>' 'ubuntu-8.04.4-server-amd64'
|
82
|
+
veewee vbox define '<box_name>' 'ubuntu-8.04.4-server-i386'
|
83
|
+
veewee vbox define '<box_name>' 'windows-2008R1-serverstandard-amd64'
|
84
|
+
veewee vbox define '<box_name>' 'windows-2008R2-amd64'
|
85
|
+
veewee vbox define '<box_name>' 'windows-2008R2-serverstandard-amd64'
|
86
|
+
veewee vbox define '<box_name>' 'windows-7-enterprise-amd64'
|
87
|
+
veewee vbox define '<box_name>' 'windows-7-enterprise-i386'
|
88
|
+
veewee vbox define '<box_name>' 'windows-7-premium-amd64'
|
89
|
+
veewee vbox define '<box_name>' 'windows-7-professional-amd64'
|
90
|
+
veewee vbox define '<box_name>' 'windows-7-ultimate-amd64'
|
91
|
+
veewee vbox define '<box_name>' 'windows-7sp1-ultimate-amd64'
|
92
|
+
veewee vbox define '<box_name>' 'windows-8-preview-dev-amd64'
|
93
|
+
|
94
|
+
|
95
|
+
## Structure
|
96
|
+
Templates have the same structure as a <definition> but are provided by veewee as templates for definitions.
|
97
|
+
|
98
|
+
## Extending templates
|
99
|
+
|
100
|
+
- fork veewee
|
101
|
+
- add a new template under the templates directory
|
102
|
+
- send me a pull request
|
data/doc/vagrant.md
ADDED
@@ -0,0 +1,119 @@
|
|
1
|
+
## Define a new box
|
2
|
+
Let's define a Ubuntu 10.10 server i386 basebox called myunbuntubox
|
3
|
+
this is essentially making a copy based on the templates provided above.
|
4
|
+
|
5
|
+
$ veewee vbox basebox define 'myubuntubox' 'ubuntu-10.10-server-i386'
|
6
|
+
The basebox 'myubuntubox' has been succesfully created from the template ''ubuntu-10.10-server-i386'
|
7
|
+
You can now edit the definition files stored in definitions/myubuntubox
|
8
|
+
or build the box with:
|
9
|
+
veewee vbox basebox build 'myubuntubox'
|
10
|
+
|
11
|
+
-> This copies over the templates/ubuntu-10.10-server-i386 to definition/myubuntubox
|
12
|
+
|
13
|
+
$ ls definitions/myubuntubox
|
14
|
+
definition.rb postinstall.sh postinstall2.sh preseed.cfg
|
15
|
+
|
16
|
+
## Optionally modify the definition.rb , postinstall.sh or preseed.cfg
|
17
|
+
|
18
|
+
Veewee::Definition.declare( {
|
19
|
+
:cpu_count => '1', :memory_size=> '256',
|
20
|
+
:disk_size => '10140', :disk_format => 'VDI',
|
21
|
+
:os_type_id => 'Ubuntu',
|
22
|
+
:iso_file => "ubuntu-10.10-server-i386.iso",
|
23
|
+
:iso_src => "http://releases.ubuntu.com/maverick/ubuntu-10.10-server-i386.iso",
|
24
|
+
:iso_md5 => "ce1cee108de737d7492e37069eed538e",
|
25
|
+
:iso_download_timeout => "1000",
|
26
|
+
:boot_wait => "10",
|
27
|
+
:boot_cmd_sequence => [
|
28
|
+
'<Esc><Esc><Enter>',
|
29
|
+
'/install/vmlinuz noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
|
30
|
+
'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
|
31
|
+
'hostname=%NAME% ',
|
32
|
+
'fb=false debconf/frontend=noninteractive ',
|
33
|
+
'console-setup/ask_detect=false console-setup/modelcode=pc105 console-setup/layoutcode=us ',
|
34
|
+
'initrd=/install/initrd.gz -- <Enter>'
|
35
|
+
],
|
36
|
+
:kickstart_port => "7122", :kickstart_timeout => "10000",:kickstart_file => "preseed.cfg",
|
37
|
+
:ssh_login_timeout => "10000",:ssh_user => "vagrant", :ssh_password => "vagrant",:ssh_key => "",
|
38
|
+
:ssh_host_port => "2222", :ssh_guest_port => "22",
|
39
|
+
:sudo_cmd => "echo '%p'|sudo -S sh '%f'",
|
40
|
+
:shutdown_cmd => "shutdown -H",
|
41
|
+
:postinstall_files => [ "postinstall.sh"],:postinstall_timeout => "10000"
|
42
|
+
}
|
43
|
+
)
|
44
|
+
|
45
|
+
If you need to change values in the templates, be sure to run the rake undefine, the rake define again to copy the changes across.
|
46
|
+
|
47
|
+
## Getting the cdrom file in place
|
48
|
+
Put your isofile inside the 'currentdir'/iso directory or if you don't run
|
49
|
+
|
50
|
+
$ veewee vbox basebox build 'myubuntubox'
|
51
|
+
|
52
|
+
- the build assumes your iso files are in 'currentdir'/iso
|
53
|
+
- if it can not find it will suggest to download the iso for you
|
54
|
+
- use '--force' to overwrite an existing install
|
55
|
+
|
56
|
+
## Build the new box:
|
57
|
+
|
58
|
+
$ veewee vbox basebox build 'myubuntubox'
|
59
|
+
|
60
|
+
- This will create a machine + disk according to the definition.rb
|
61
|
+
- Note: :os_type_id = The internal Name Virtualbox uses for that Distribution
|
62
|
+
- Mount the ISO File :iso_file
|
63
|
+
- Boot up the machine and wait for :boot_time
|
64
|
+
- Send the keystrokes in :boot_cmd_sequence
|
65
|
+
- Startup a webserver on :kickstart_port to wait for a request for the :kickstart_file (don't navigate to the file in your browser or the server will stop and the installer will not be able to find your preseed)
|
66
|
+
- Wait for ssh login to work with :ssh_user , :ssh_password
|
67
|
+
- Sudo execute the :postinstall_files
|
68
|
+
|
69
|
+
## Validate the vm
|
70
|
+
|
71
|
+
$ veewee vbox validate 'myubuntubox'
|
72
|
+
|
73
|
+
this will run some cucumber test against the box to see if it has the necessary bits and pieces for vagrant to work
|
74
|
+
|
75
|
+
## Export the vm to a .box file
|
76
|
+
|
77
|
+
$ vagrant basebox export 'myubuntubox'
|
78
|
+
|
79
|
+
this is actually calling - vagrant package --base 'myubuntubox' --output 'boxes/myubuntubox.box'
|
80
|
+
|
81
|
+
this will result in a myubuntubox.box
|
82
|
+
|
83
|
+
## Add the box as one of your boxes
|
84
|
+
To import it into vagrant type:
|
85
|
+
|
86
|
+
$ vagrant box add 'myubuntubox' 'myubuntubox.box'
|
87
|
+
|
88
|
+
## Use it in vagrant
|
89
|
+
|
90
|
+
To use it:
|
91
|
+
|
92
|
+
$ vagrant init 'myubuntubox'
|
93
|
+
$ vagrant up
|
94
|
+
$ vagrant ssh
|
95
|
+
|
96
|
+
## How to add a new OS/installation (needs some love)
|
97
|
+
|
98
|
+
I suggest the easiest way is to get an account on github and fork of the veewee repository
|
99
|
+
|
100
|
+
$ git clone https://github.com/*your account*/veewee.git
|
101
|
+
$ cd veewee
|
102
|
+
$ gem install bundler
|
103
|
+
$ bundle install
|
104
|
+
|
105
|
+
If you don't use rvm, be sure to execute vagrant through bundle exec
|
106
|
+
|
107
|
+
$ alias vagrant="bundle exec vagrant"
|
108
|
+
|
109
|
+
Start of an existing one
|
110
|
+
|
111
|
+
$ veewee vbox basebox define 'mynewos' 'ubuntu...'
|
112
|
+
|
113
|
+
- Do changes in the currentdir/definitions/mynewos
|
114
|
+
- When it builds ok, move the definition/mynewos to a sensible directory under templates
|
115
|
+
- commit the changes (git commit -a)
|
116
|
+
- push the changes to github (git push)
|
117
|
+
- go to the github gui and issue a pull request for it
|
118
|
+
|
119
|
+
## If you have a setup working, share your 'definition' with me. That would be fun!
|
data/doc/vbox.md
ADDED
data/lib/net/vnc/vnc.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
import sys
|
2
|
+
import prlsdkapi
|
3
|
+
|
4
|
+
prlsdk = prlsdkapi.prlsdk
|
5
|
+
consts = prlsdkapi.prlsdk.consts
|
6
|
+
|
7
|
+
# Initialize the Parallels API Library
|
8
|
+
prlsdk.InitializeSDK(consts.PAM_DESKTOP_MAC)
|
9
|
+
|
10
|
+
# Obtain a server object identifying the Parallels Service.
|
11
|
+
server = prlsdkapi.Server()
|
12
|
+
|
13
|
+
# Log in. (local as we do Parallels Desktop
|
14
|
+
login_job=server.login_local()
|
15
|
+
login_job.wait()
|
16
|
+
|
17
|
+
# Logoff and deinitialize the library
|
18
|
+
server.logoff()
|
19
|
+
prlsdkapi.deinit_sdk
|
@@ -0,0 +1,73 @@
|
|
1
|
+
import sys
|
2
|
+
import prlsdkapi
|
3
|
+
|
4
|
+
if len(sys.argv) != 4:
|
5
|
+
print "Usage: parallels_send_keycode '<VM_NAME>' '<keyname>' '<press|release>'"
|
6
|
+
exit()
|
7
|
+
|
8
|
+
# Parse arguments
|
9
|
+
vm_name=sys.argv[1]
|
10
|
+
# Keycode to use
|
11
|
+
keyname=sys.argv[2]
|
12
|
+
# Release or press
|
13
|
+
state=sys.argv[3]
|
14
|
+
|
15
|
+
print "Sending keyname '%(keyname)s' to VM '%(vm_name)s'" % {"keyname": keyname, "vm_name":vm_name}
|
16
|
+
|
17
|
+
prlsdk = prlsdkapi.prlsdk
|
18
|
+
consts = prlsdkapi.prlsdk.consts
|
19
|
+
|
20
|
+
# Initialize the Parallels API Library
|
21
|
+
prlsdk.InitializeSDK(consts.PAM_DESKTOP_MAC)
|
22
|
+
|
23
|
+
# Obtain a server object identifying the Parallels Service.
|
24
|
+
server = prlsdkapi.Server()
|
25
|
+
|
26
|
+
# Log in. (local as we do Parallels Desktop
|
27
|
+
login_job=server.login_local()
|
28
|
+
login_job.wait()
|
29
|
+
|
30
|
+
# Get a list of virtual machines.
|
31
|
+
# Find the specified virtual machine and
|
32
|
+
# obtain an object identifying it.
|
33
|
+
vm_list = server.get_vm_list()
|
34
|
+
result= vm_list.wait()
|
35
|
+
|
36
|
+
print prlsdkapi.prlsdk.consts.ScanCodesList
|
37
|
+
|
38
|
+
# Look for the VM with the name speficied on the CLI
|
39
|
+
found = False
|
40
|
+
for i in range(result.get_params_count()):
|
41
|
+
VM = result.get_param_by_index(i)
|
42
|
+
print VM.get_name()
|
43
|
+
if VM.get_name() == vm_name:
|
44
|
+
found = True
|
45
|
+
break
|
46
|
+
|
47
|
+
press = consts.PKE_PRESS
|
48
|
+
release = consts.PKE_RELEASE
|
49
|
+
|
50
|
+
# Access the Remote Desktop Access session
|
51
|
+
vm_io = prlsdkapi.VmIO()
|
52
|
+
try:
|
53
|
+
vm_io.connect_to_vm(VM).wait()
|
54
|
+
except prlsdkapi.PrlSDKError, e:
|
55
|
+
print "Error: %s" % e
|
56
|
+
exit()
|
57
|
+
|
58
|
+
scan_code = consts.ScanCodesList[keyname]
|
59
|
+
|
60
|
+
if state == 'press':
|
61
|
+
vm_io.send_key_event(VM,scan_code,press)
|
62
|
+
elif state == 'release':
|
63
|
+
vm_io.send_key_event(VM,scan_code,release)
|
64
|
+
else:
|
65
|
+
print "invalid state: %s" % state
|
66
|
+
exit()
|
67
|
+
|
68
|
+
# End the Remote Deskop Access session
|
69
|
+
vm_io.disconnect_from_vm(VM)
|
70
|
+
|
71
|
+
# Logoff and deinitialize the library
|
72
|
+
server.logoff()
|
73
|
+
prlsdkapi.deinit_sdk
|