veewee 0.2.3 → 0.3.0.alpha1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -0
- data/Gemfile +1 -2
- data/Gemfile.lock +53 -30
- data/License +21 -0
- data/README-LIB.md +2 -0
- data/README.md +35 -62
- data/Rakefile +54 -88
- data/bin/veewee +13 -70
- data/bin/veewee-kvm-old +34 -0
- data/bin/veewee-vagrant +55 -0
- data/bin/veewee-vmfusion +34 -0
- data/lib/fission.rb +41 -0
- data/lib/fission/cli.rb +76 -0
- data/lib/fission/command.rb +15 -0
- data/lib/fission/command/clone.rb +68 -0
- data/lib/fission/command/delete.rb +71 -0
- data/lib/fission/command/snapshot_create.rb +52 -0
- data/lib/fission/command/snapshot_list.rb +45 -0
- data/lib/fission/command/snapshot_revert.rb +54 -0
- data/lib/fission/command/start.rb +69 -0
- data/lib/fission/command/status.rb +31 -0
- data/lib/fission/command/stop.rb +49 -0
- data/lib/fission/command/suspend.rb +67 -0
- data/lib/fission/config.rb +29 -0
- data/lib/fission/core_ext/class.rb +5 -0
- data/lib/fission/core_ext/file.rb +7 -0
- data/lib/fission/core_ext/object.rb +112 -0
- data/lib/fission/error.rb +9 -0
- data/lib/fission/fusion.rb +17 -0
- data/lib/fission/leasesfile.rb +74 -0
- data/lib/fission/metadata.rb +39 -0
- data/lib/fission/response.rb +16 -0
- data/lib/fission/ui.rb +22 -0
- data/lib/fission/version.rb +3 -0
- data/lib/fission/vm.rb +361 -0
- data/lib/net/vnc/vnc.rb +341 -0
- data/lib/vagrant_init.rb +5 -2
- data/lib/veewee.rb +20 -3
- data/lib/veewee/builder/core/box.rb +32 -0
- data/lib/veewee/builder/core/box/vnc.rb +122 -0
- data/lib/veewee/builder/core/builder.rb +90 -0
- data/lib/veewee/builder/core/builder/build.rb +250 -0
- data/lib/veewee/builder/core/builder/iso.rb +120 -0
- data/lib/veewee/builder/core/builder/transaction.rb +25 -0
- data/lib/veewee/builder/core/builder/tunnel.rb +46 -0
- data/lib/veewee/builder/kvm/box.rb +130 -0
- data/lib/veewee/builder/kvm/builder.rb +38 -0
- data/lib/veewee/builder/virtualbox/box.rb +121 -0
- data/lib/veewee/builder/virtualbox/builder.rb +48 -0
- data/lib/veewee/builder/virtualbox/helper/_snapshots.rb +105 -0
- data/lib/veewee/builder/virtualbox/helper/_transaction.rb +135 -0
- data/lib/veewee/builder/virtualbox/helper/console_type.rb +62 -0
- data/lib/veewee/builder/virtualbox/helper/create.rb +210 -0
- data/lib/veewee/builder/virtualbox/helper/destroy.rb +79 -0
- data/lib/veewee/builder/virtualbox/helper/export_vagrant.rb +87 -0
- data/lib/veewee/builder/virtualbox/helper/validate_vagrant.rb +35 -0
- data/lib/veewee/builder/vmfusion/box.rb +137 -0
- data/lib/veewee/builder/vmfusion/builder.rb +78 -0
- data/lib/veewee/builder/vmfusion/helper/create.rb +68 -0
- data/lib/veewee/builder/vmfusion/helper/export_ova.rb +26 -0
- data/lib/veewee/builder/vmfusion/helper/template.rb +39 -0
- data/lib/veewee/builder/vmfusion/helper/template.vmx.erb +81 -0
- data/lib/veewee/builder/vmfusion/helper/validate_vmfusion.rb +37 -0
- data/lib/veewee/builder/vmfusion/info/export_ovf.info +103 -0
- data/lib/veewee/cli.rb +55 -0
- data/lib/veewee/command.rb +10 -20
- data/lib/veewee/command/base.rb +106 -0
- data/lib/veewee/command/group_base.rb +107 -0
- data/lib/veewee/command/helpers.rb +13 -0
- data/lib/veewee/command/kvm.rb +85 -0
- data/lib/veewee/command/named_base.rb +14 -0
- data/lib/veewee/command/vagrant.rb +108 -0
- data/lib/veewee/command/version.rb +13 -0
- data/lib/veewee/command/virtualbox.rb +86 -0
- data/lib/veewee/command/vmfusion.rb +113 -0
- data/lib/veewee/config.rb +89 -3
- data/lib/veewee/config/builders.rb +36 -0
- data/lib/veewee/config/collection.rb +82 -0
- data/lib/veewee/config/component.rb +19 -0
- data/lib/veewee/config/definition.rb +44 -0
- data/lib/veewee/config/ostypes.yml +165 -0
- data/lib/veewee/config/veewee.rb +21 -0
- data/lib/veewee/definition.rb +130 -0
- data/lib/veewee/environment.rb +367 -0
- data/lib/veewee/error.rb +20 -0
- data/lib/veewee/templates/locales/en.yml +30 -0
- data/lib/veewee/ui.rb +83 -0
- data/lib/veewee/util/scancode.rb +112 -0
- data/lib/veewee/util/shell.rb +42 -0
- data/lib/veewee/util/ssh.rb +158 -0
- data/lib/veewee/util/tcp.rb +88 -0
- data/lib/veewee/util/web.rb +63 -0
- data/lib/veewee/vagrant/config.rb +7 -0
- data/lib/veewee/version.rb +6 -1
- data/templates/CentOS-4.8-i386/definition.rb +3 -3
- data/templates/CentOS-4.8-i386/postinstall.sh +2 -2
- 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 +3 -3
- data/templates/CentOS-5.6-i386-netboot/ks.cfg +2 -2
- data/templates/CentOS-5.6-i386-netboot/postinstall.sh +2 -2
- data/templates/CentOS-5.6-i386/definition.rb +2 -2
- data/templates/CentOS-5.6-i386/postinstall.sh +2 -2
- data/templates/CentOS-5.6-x86_64-netboot/definition.rb +3 -3
- 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/definition.rb +2 -2
- data/templates/CentOS-6.0-i386-netboot/postinstall.sh +2 -2
- data/templates/CentOS-6.0-i386/definition.rb +2 -2
- data/templates/CentOS-6.0-i386/postinstall.sh +2 -2
- data/templates/CentOS-6.0-x86_64-minimal/definition.rb +2 -2
- data/templates/CentOS-6.0-x86_64-minimal/postinstall.sh +4 -17
- data/templates/CentOS-6.0-x86_64-netboot/definition.rb +2 -2
- data/templates/CentOS-6.0-x86_64-netboot/postinstall.sh +2 -2
- data/templates/CentOS-6.0-x86_64/definition.rb +2 -2
- data/templates/CentOS-6.0-x86_64/postinstall.sh +2 -2
- data/templates/Debian-5.0.8-amd64-netboot/definition.rb +1 -1
- data/templates/Debian-5.0.8-amd64-netboot/postinstall.sh +1 -1
- data/templates/Debian-5.0.8-i386-netboot/definition.rb +1 -1
- data/templates/Debian-5.0.8-i386-netboot/postinstall.sh +1 -1
- data/templates/{Debian-6.0.3-amd64-netboot → Debian-6.0.2-amd64-netboot}/definition.rb +4 -4
- data/templates/{ubuntu-11.10-server-amd64-ishaya → Debian-6.0.2-amd64-netboot}/postinstall.sh +23 -42
- data/templates/{Debian-6.0.3-amd64-netboot → Debian-6.0.2-amd64-netboot}/preseed.cfg +0 -0
- data/templates/{Debian-6.0.3-i386-netboot → Debian-6.0.2-i386-netboot}/definition.rb +4 -4
- data/templates/{Debian-6.0.3-i386-netboot → Debian-6.0.2-i386-netboot}/postinstall.sh +1 -1
- data/templates/{Debian-6.0.3-i386-netboot → Debian-6.0.2-i386-netboot}/preseed.cfg +0 -0
- data/templates/Fedora-14-amd64-netboot/definition.rb +2 -2
- data/templates/Fedora-14-amd64-netboot/postinstall.sh +2 -2
- data/templates/Fedora-14-amd64/definition.rb +2 -2
- data/templates/Fedora-14-amd64/postinstall.sh +2 -2
- data/templates/Fedora-14-i386-netboot/definition.rb +2 -2
- data/templates/Fedora-14-i386-netboot/postinstall.sh +2 -2
- data/templates/Fedora-14-i386/definition.rb +2 -2
- data/templates/Fedora-14-i386/postinstall.sh +2 -2
- data/templates/Fedora-15-i386-netboot/definition.rb +2 -2
- data/templates/Fedora-15-i386/definition.rb +3 -3
- data/templates/Sysrescuecd-2.0.0-experimental/definition.rb +1 -1
- data/templates/archlinux-i386-netboot/aif.cfg +14 -8
- data/templates/archlinux-i386-netboot/definition.rb +7 -4
- data/templates/archlinux-i386-netboot/postinstall.sh +17 -5
- data/templates/archlinux-i386-netboot/postinstall2.sh +1 -3
- data/templates/archlinux-i386/definition.rb +4 -4
- data/templates/archlinux-i386/postinstall.sh +1 -1
- data/templates/archlinux-x86_64-netboot/aif.cfg +14 -8
- data/templates/archlinux-x86_64-netboot/definition.rb +7 -4
- data/templates/archlinux-x86_64-netboot/postinstall.sh +16 -1
- data/templates/archlinux-x86_64-netboot/postinstall2.sh +1 -3
- data/templates/archlinux-x86_64/definition.rb +2 -2
- data/templates/archlinux-x86_64/postinstall.sh +1 -1
- data/templates/freebsd-8.2-experimental/definition.rb +1 -1
- data/templates/freebsd-8.2-pcbsd-i386-netboot/definition.rb +2 -5
- data/templates/freebsd-8.2-pcbsd-i386-netboot/postinstall.sh +1 -1
- data/templates/freebsd-8.2-pcbsd-i386/definition.rb +3 -4
- data/templates/freebsd-8.2-pcbsd-i386/postinstall.sh +1 -1
- data/templates/gentoo-latest-i386-experimental/definition.rb +7 -7
- data/templates/gentoo-latest-i386-experimental/postinstall.sh +1 -1
- data/templates/openSUSE-11.4-DVD-i586/postinstall.sh +1 -1
- data/templates/openSUSE-11.4-DVD-x86_64/postinstall.sh +1 -1
- data/templates/openSUSE-11.4-NET-i586/postinstall.sh +1 -1
- data/templates/openSUSE-11.4-NET-x86_64/postinstall.sh +1 -1
- data/templates/openindiana-148-ai-x86/definition.rb +3 -3
- data/templates/openindiana-148-ai-x86/postinstall.sh +1 -1
- data/templates/opensuse-11.4-i386-experimental/definition.rb +1 -1
- data/templates/opensuse-11.4-i386-experimental/postinstall.sh +1 -1
- data/templates/solaris-11-express-i386/definition.rb +3 -3
- data/templates/solaris-11-express-i386/postinstall.sh +1 -1
- data/templates/ubuntu-10.04.2-amd64-netboot/definition.rb +1 -1
- data/templates/ubuntu-10.04.2-amd64-netboot/postinstall.sh +1 -1
- data/templates/ubuntu-10.04.2-server-i386-netboot/definition.rb +1 -1
- data/templates/ubuntu-10.04.2-server-i386-netboot/postinstall.sh +1 -1
- data/templates/ubuntu-10.04.3-server-amd64-alt/definition.rb +6 -6
- data/templates/ubuntu-10.04.3-server-amd64-alt/postinstall.sh +1 -1
- data/templates/ubuntu-10.04.3-server-amd64/base.sh +11 -0
- data/templates/ubuntu-10.04.3-server-amd64/chef.sh +2 -0
- data/templates/ubuntu-10.04.3-server-amd64/cleanup.sh +19 -0
- data/templates/ubuntu-10.04.3-server-amd64/definition.rb +19 -11
- data/templates/ubuntu-10.04.3-server-amd64/preseed.cfg +4 -4
- data/templates/ubuntu-10.04.3-server-amd64/puppet.sh +1 -0
- data/templates/ubuntu-10.04.3-server-amd64/ruby.sh +24 -0
- data/templates/ubuntu-10.04.3-server-amd64/vagrant.sh +27 -0
- data/templates/ubuntu-10.04.3-server-amd64/virtualbox.sh +12 -0
- data/templates/ubuntu-10.04.3-server-i386/postinstall.sh +1 -1
- data/templates/ubuntu-10.10-server-amd64-netboot/definition.rb +1 -1
- data/templates/ubuntu-10.10-server-amd64-netboot/postinstall.sh +1 -1
- data/templates/ubuntu-10.10-server-amd64/base.sh +11 -0
- data/templates/ubuntu-10.10-server-amd64/chef.sh +2 -0
- data/templates/ubuntu-10.10-server-amd64/cleanup.sh +19 -0
- data/templates/ubuntu-10.10-server-amd64/definition.rb +20 -8
- data/templates/ubuntu-10.10-server-amd64/postinstall.sh +1 -1
- data/templates/ubuntu-10.10-server-amd64/preseed.cfg +5 -5
- data/templates/ubuntu-10.10-server-amd64/puppet.sh +1 -0
- data/templates/ubuntu-10.10-server-amd64/ruby.sh +24 -0
- data/templates/ubuntu-10.10-server-amd64/vagrant.sh +27 -0
- data/templates/ubuntu-10.10-server-amd64/virtualbox.sh +12 -0
- data/templates/ubuntu-10.10-server-i386-netboot/definition.rb +1 -1
- data/templates/ubuntu-10.10-server-i386-netboot/postinstall.sh +1 -1
- data/templates/ubuntu-10.10-server-i386/definition.rb +1 -1
- data/templates/ubuntu-10.10-server-i386/postinstall.sh +1 -1
- data/templates/ubuntu-11.04-server-amd64/apt-upgrade.sh +4 -0
- data/templates/ubuntu-11.04-server-amd64/chef.sh +1 -0
- data/templates/ubuntu-11.04-server-amd64/definition.rb +32 -9
- data/templates/ubuntu-11.04-server-amd64/network-cleanup.sh +14 -0
- data/templates/ubuntu-11.04-server-amd64/nfs-client.sh +3 -0
- data/templates/ubuntu-11.04-server-amd64/puppet.sh +1 -0
- data/templates/ubuntu-11.04-server-amd64/remove-build-essentials.sh +3 -0
- data/templates/ubuntu-11.04-server-amd64/ruby.sh +29 -0
- data/templates/ubuntu-11.04-server-amd64/ssh-keys.sh +7 -0
- data/templates/ubuntu-11.04-server-amd64/sudo.sh +4 -0
- data/templates/ubuntu-11.04-server-amd64/timestamp.sh +1 -0
- data/templates/ubuntu-11.04-server-amd64/vbox_additions.sh +11 -0
- data/templates/ubuntu-11.04-server-amd64/zero-disk.sh +3 -0
- data/templates/ubuntu-11.04-server-i386/definition.rb +2 -2
- data/templates/ubuntu-11.04-server-i386/postinstall.sh +1 -1
- data/templates/ubuntu-8.04.4-server-amd64/definition.rb +1 -2
- data/templates/ubuntu-8.04.4-server-amd64/postinstall.sh +7 -8
- data/templates/ubuntu-8.04.4-server-amd64/preseed.cfg +1 -0
- data/templates/ubuntu-8.04.4-server-i386/definition.rb +2 -2
- data/templates/ubuntu-8.04.4-server-i386/postinstall.sh +3 -25
- data/templates/windows-2008R2-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R2-amd64/definition.rb +1 -1
- data/templates/windows-2008R2-amd64/install-winrm.bat +0 -2
- data/templates/windows-2008R2-amd64/postinstall.sh +1 -1
- data/templates/windows-2008R2-amd64/win7/Autounattend.xml +180 -0
- data/test/build_test.rb +50 -0
- data/test/definition_test.rb +11 -0
- data/test/definitions/test_definition/_test_me.sh +1 -0
- data/test/definitions/test_definition/autorun0 +3 -0
- data/test/definitions/test_definition/definition.rb +27 -0
- data/test/environment_test.rb +67 -0
- data/validation/features/steps/ssh_steps.rb +52 -52
- data/validation/vagrant.feature +64 -48
- data/veewee.gemspec +14 -9
- metadata +243 -213
- data/lib/veewee/command/basebox.rb +0 -63
- data/lib/veewee/command/basebox_build.rb +0 -32
- data/lib/veewee/command/basebox_define.rb +0 -28
- data/lib/veewee/command/basebox_destroy.rb +0 -22
- data/lib/veewee/command/basebox_export.rb +0 -22
- data/lib/veewee/command/basebox_list.rb +0 -23
- data/lib/veewee/command/basebox_ostypes.rb +0 -23
- data/lib/veewee/command/basebox_templates.rb +0 -23
- data/lib/veewee/command/basebox_undefine.rb +0 -22
- data/lib/veewee/command/basebox_validate.rb +0 -26
- data/lib/veewee/export.rb +0 -81
- data/lib/veewee/scancode.rb +0 -151
- data/lib/veewee/session.rb +0 -907
- data/lib/veewee/shell.rb +0 -54
- data/lib/veewee/ssh.rb +0 -193
- data/lib/veewee/transaction.rb +0 -122
- data/lib/veewee/utils.rb +0 -26
- data/lib/veewee/web.rb +0 -48
- data/templates/CentOS-6.1-x86_64-minimal/definition.rb +0 -15
- data/templates/CentOS-6.1-x86_64-minimal/ks.cfg +0 -37
- data/templates/CentOS-6.1-x86_64-minimal/postinstall.sh +0 -50
- data/templates/CentOS-6.2-x86_64-minimal/definition.rb +0 -15
- data/templates/CentOS-6.2-x86_64-minimal/ks.cfg +0 -37
- data/templates/CentOS-6.2-x86_64-minimal/postinstall.sh +0 -50
- data/templates/Debian-6.0.3-amd64-netboot/postinstall.sh +0 -80
- data/templates/Fedora-15-x86_64-netboot/definition.rb +0 -29
- data/templates/Fedora-15-x86_64-netboot/ks.cfg +0 -64
- data/templates/Fedora-15-x86_64-netboot/postinstall.sh +0 -33
- data/templates/Fedora-16-i386/definition.rb +0 -17
- data/templates/Fedora-16-i386/ks.cfg +0 -72
- data/templates/Fedora-16-i386/postinstall.sh +0 -35
- data/templates/Fedora-16-x86_64/definition.rb +0 -17
- data/templates/Fedora-16-x86_64/ks.cfg +0 -72
- data/templates/Fedora-16-x86_64/postinstall.sh +0 -35
- data/templates/SLES-11-SP1-DVD-i586-GM/autoinst_de.xml +0 -1127
- data/templates/SLES-11-SP1-DVD-i586-GM/autoinst_en.xml +0 -1127
- data/templates/SLES-11-SP1-DVD-i586-GM/definition.rb +0 -37
- data/templates/SLES-11-SP1-DVD-i586-GM/postinstall.sh +0 -43
- data/templates/SLES-11-SP1-DVD-x86_64-GM/autoinst_de.xml +0 -1171
- data/templates/SLES-11-SP1-DVD-x86_64-GM/autoinst_en.xml +0 -1171
- data/templates/SLES-11-SP1-DVD-x86_64-GM/definition.rb +0 -37
- data/templates/SLES-11-SP1-DVD-x86_64-GM/postinstall.sh +0 -43
- data/templates/funtoo-latest-generic_64-stable/definition.rb +0 -34
- data/templates/funtoo-latest-generic_64-stable/postinstall.sh +0 -177
- data/templates/funtoo-latest-generic_64-stable/postinstall2.sh +0 -83
- data/templates/gentoo-latest-x86_64-experimental/definition.rb +0 -34
- data/templates/gentoo-latest-x86_64-experimental/postinstall.sh +0 -214
- data/templates/openSUSE-12.1-DVD+NET-i586/autoinst_de.xml +0 -1483
- data/templates/openSUSE-12.1-DVD+NET-i586/autoinst_en.xml +0 -1483
- data/templates/openSUSE-12.1-DVD+NET-i586/definition.rb +0 -44
- data/templates/openSUSE-12.1-DVD+NET-i586/postinstall.sh +0 -43
- data/templates/openSUSE-12.1-DVD+NET-x86_64/autoinst_de.xml +0 -1727
- data/templates/openSUSE-12.1-DVD+NET-x86_64/autoinst_en.xml +0 -1727
- data/templates/openSUSE-12.1-DVD+NET-x86_64/definition.rb +0 -44
- data/templates/openSUSE-12.1-DVD+NET-x86_64/postinstall.sh +0 -43
- data/templates/openbsd50_amd64/README +0 -28
- data/templates/openbsd50_amd64/definition.rb +0 -84
- data/templates/openbsd50_amd64/postinstall.sh +0 -81
- data/templates/openbsd50_i386/.definition.rb.swp +0 -0
- data/templates/openbsd50_i386/README +0 -28
- data/templates/openbsd50_i386/definition.rb +0 -84
- data/templates/openbsd50_i386/postinstall.sh +0 -80
- data/templates/scientificlinux-6.1-i386-netboot/definition.rb +0 -16
- data/templates/scientificlinux-6.1-i386-netboot/ks.cfg +0 -53
- data/templates/scientificlinux-6.1-i386-netboot/postinstall.sh +0 -30
- data/templates/scientificlinux-6.1-x86_64-netboot/definition.rb +0 -16
- data/templates/scientificlinux-6.1-x86_64-netboot/ks.cfg +0 -53
- data/templates/scientificlinux-6.1-x86_64-netboot/postinstall.sh +0 -30
- data/templates/ubuntu-10.04.3-server-amd64/postinstall.sh +0 -90
- data/templates/ubuntu-11.04-server-amd64/postinstall.sh +0 -96
- data/templates/ubuntu-11.10-server-amd64-ishaya/definition.rb +0 -24
- data/templates/ubuntu-11.10-server-amd64-ishaya/preseed.cfg +0 -87
- data/templates/ubuntu-11.10-server-amd64-ruby192/definition.rb +0 -24
- data/templates/ubuntu-11.10-server-amd64-ruby192/postinstall.sh +0 -90
- data/templates/ubuntu-11.10-server-amd64-ruby192/preseed.cfg +0 -87
- data/templates/ubuntu-11.10-server-amd64/definition.rb +0 -35
- data/templates/ubuntu-11.10-server-amd64/postinstall.sh +0 -88
- data/templates/ubuntu-11.10-server-amd64/preseed.cfg +0 -87
- data/templates/ubuntu-11.10-server-i386/definition.rb +0 -35
- data/templates/ubuntu-11.10-server-i386/postinstall.sh +0 -88
- data/templates/ubuntu-11.10-server-i386/preseed.cfg +0 -87
- data/templates/windows-2008R1-serverstandard-amd64/Autounattend.xml +0 -146
- data/templates/windows-2008R1-serverstandard-amd64/README.md +0 -134
- data/templates/windows-2008R1-serverstandard-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-2008R1-serverstandard-amd64/definition.rb +0 -114
- data/templates/windows-2008R1-serverstandard-amd64/install-cygwin-sshd.bat +0 -40
- data/templates/windows-2008R1-serverstandard-amd64/install-guest-additions.bat +0 -5
- data/templates/windows-2008R1-serverstandard-amd64/install-winrm.bat +0 -14
- data/templates/windows-2008R1-serverstandard-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R1-serverstandard-amd64/postinstall.sh +0 -74
- data/templates/windows-2008R1-serverstandard-amd64/sudo +0 -2
- data/templates/windows-2008R1-serverstandard-amd64/winrm.rb +0 -8
- data/templates/windows-2008R2-serverstandard-amd64/Autounattend.xml +0 -147
- data/templates/windows-2008R2-serverstandard-amd64/README.md +0 -142
- data/templates/windows-2008R2-serverstandard-amd64/definition.rb +0 -44
- data/templates/windows-2008R2-serverstandard-amd64/install-cygwin-sshd.bat +0 -41
- data/templates/windows-2008R2-serverstandard-amd64/install-winrm.bat +0 -11
- data/templates/windows-2008R2-serverstandard-amd64/oracle-cert.cer +0 -0
- data/templates/windows-2008R2-serverstandard-amd64/postinstall.sh +0 -74
- data/templates/windows-7-enterprise-amd64/Autounattend.xml +0 -149
- data/templates/windows-7-enterprise-amd64/README.md +0 -52
- data/templates/windows-7-enterprise-amd64/definition.rb +0 -39
- data/templates/windows-7-enterprise-amd64/install-cygwin-sshd.bat +0 -40
- data/templates/windows-7-enterprise-amd64/install-winrm.bat +0 -14
- data/templates/windows-7-enterprise-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-enterprise-amd64/postinstall.sh +0 -74
- data/templates/windows-7-enterprise-i386/Autounattend.xml +0 -151
- data/templates/windows-7-enterprise-i386/README.md +0 -169
- data/templates/windows-7-enterprise-i386/definition.rb +0 -40
- data/templates/windows-7-enterprise-i386/install-cygwin-sshd.bat +0 -40
- data/templates/windows-7-enterprise-i386/install-winrm.bat +0 -14
- data/templates/windows-7-enterprise-i386/oracle-cert.cer +0 -0
- data/templates/windows-7-enterprise-i386/postinstall.sh +0 -74
- data/templates/windows-7-premium-amd64/Autounattend.xml +0 -152
- data/templates/windows-7-premium-amd64/README.md +0 -171
- data/templates/windows-7-premium-amd64/definition.rb +0 -38
- data/templates/windows-7-premium-amd64/install-chefclient.bat +0 -44
- data/templates/windows-7-premium-amd64/install-winrm.bat +0 -11
- data/templates/windows-7-premium-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-premium-amd64/postinstall.sh +0 -124
- data/templates/windows-7-premium-amd64/winrm.rb +0 -8
- data/templates/windows-7-professional-amd64/Autounattend.xml +0 -152
- data/templates/windows-7-professional-amd64/README.md +0 -171
- data/templates/windows-7-professional-amd64/definition.rb +0 -41
- data/templates/windows-7-professional-amd64/install-cygwin-sshd.bat +0 -40
- data/templates/windows-7-professional-amd64/install-winrm.bat +0 -14
- data/templates/windows-7-professional-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-professional-amd64/postinstall.sh +0 -74
- data/templates/windows-7-ultimate-amd64/Autounattend.xml +0 -152
- data/templates/windows-7-ultimate-amd64/README.md +0 -89
- data/templates/windows-7-ultimate-amd64/definition.rb +0 -41
- data/templates/windows-7-ultimate-amd64/install-cygwin-sshd.bat +0 -40
- data/templates/windows-7-ultimate-amd64/install-winrm.bat +0 -14
- data/templates/windows-7-ultimate-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7-ultimate-amd64/postinstall.sh +0 -74
- data/templates/windows-7sp1-ultimate-amd64/Autounattend.xml +0 -152
- data/templates/windows-7sp1-ultimate-amd64/README.md +0 -89
- data/templates/windows-7sp1-ultimate-amd64/definition.rb +0 -42
- data/templates/windows-7sp1-ultimate-amd64/install-cygwin-sshd.bat +0 -40
- data/templates/windows-7sp1-ultimate-amd64/install-winrm.bat +0 -14
- data/templates/windows-7sp1-ultimate-amd64/oracle-cert.cer +0 -0
- data/templates/windows-7sp1-ultimate-amd64/postinstall.sh +0 -74
- data/templates/windows-8-preview-dev-amd64/Autounattend.xml +0 -140
- data/templates/windows-8-preview-dev-amd64/README.md +0 -134
- data/templates/windows-8-preview-dev-amd64/cygwin-setup.exe +0 -0
- data/templates/windows-8-preview-dev-amd64/definition.rb +0 -114
- data/templates/windows-8-preview-dev-amd64/install-cygwin-sshd.bat +0 -38
- data/templates/windows-8-preview-dev-amd64/install-winrm.bat +0 -11
- data/templates/windows-8-preview-dev-amd64/oracle-cert.cer +0 -0
- data/templates/windows-8-preview-dev-amd64/postinstall.sh +0 -122
- data/templates/windows-8-preview-dev-amd64/winrm.rb +0 -8
- data/trials/docu-vbox.txt +0 -83
- data/trials/f.rb +0 -29
- data/trials/t.rb +0 -15
data/bin/veewee-kvm-old
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'thor'
|
5
|
+
require 'libvirt'
|
6
|
+
require 'fog'
|
7
|
+
|
8
|
+
require 'veewee'
|
9
|
+
|
10
|
+
class VeeweeCLI < Thor
|
11
|
+
|
12
|
+
desc "build [NAME]", "build the box defined"
|
13
|
+
method_options :force => :boolean
|
14
|
+
def build(box_name)
|
15
|
+
|
16
|
+
|
17
|
+
logger=ANSI::Logger.new(STDOUT)
|
18
|
+
logger.level=Object.const_get('ANSI').const_get('Logger').const_get('DEBUG')
|
19
|
+
logger.formatter do |severity, timestamp, progname, msg|
|
20
|
+
# "#{progname}@#{timestamp} - #{severity}::#{msg}"
|
21
|
+
"#{msg}\n"
|
22
|
+
end
|
23
|
+
logger.ansicolor=false
|
24
|
+
|
25
|
+
|
26
|
+
puts "Building box #{box_name}"
|
27
|
+
box=Veewee::Environment.new(options,logger).get_builder(:kvm,options).get_box(box_name,box_name,options)
|
28
|
+
box.build(options)
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
VeeweeCLI.start
|
data/bin/veewee-vagrant
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'thor'
|
5
|
+
require 'bundler'
|
6
|
+
require 'virtualbox'
|
7
|
+
require 'veewee'
|
8
|
+
|
9
|
+
|
10
|
+
class VeeweeCLI < Thor
|
11
|
+
|
12
|
+
desc "define [NAME] [TEMPLATE]", "initializes a box from a template"
|
13
|
+
method_options :force => :boolean
|
14
|
+
def define(box_name=nil, template=nil)
|
15
|
+
|
16
|
+
if (box_name.nil?)
|
17
|
+
puts "please provide a box_name"
|
18
|
+
exit
|
19
|
+
end
|
20
|
+
|
21
|
+
puts "Init a new box #{box_name}, starting from template #{template}"
|
22
|
+
Veewee::Environment.define(box_name,template)
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
desc "templates", "list the template available"
|
27
|
+
def templates
|
28
|
+
Veewee::Environment.list_templates
|
29
|
+
end
|
30
|
+
|
31
|
+
desc "build [NAME]", "build the box defined"
|
32
|
+
method_options :force => :boolean
|
33
|
+
def build(box_name)
|
34
|
+
puts "Building box #{box_name}"
|
35
|
+
vs=Veewee::Environment.new(options)
|
36
|
+
vd=vs.get_definition(box_name)
|
37
|
+
vs.build(box_name,vd)
|
38
|
+
end
|
39
|
+
|
40
|
+
desc "export [NAME]", "export the box"
|
41
|
+
method_options :force => :boolean
|
42
|
+
def export(box_name)
|
43
|
+
if (!box_name.nil?)
|
44
|
+
Veewee::Environment.export_box(box_name)
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
49
|
+
|
50
|
+
version=VirtualBox.version
|
51
|
+
if (version.match(/^4./))
|
52
|
+
VeeweeCLI.start
|
53
|
+
else
|
54
|
+
puts "veewee only supports VirtualBox 4.x"
|
55
|
+
end
|
data/bin/veewee-vmfusion
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'thor'
|
5
|
+
require 'fog'
|
6
|
+
require 'fission'
|
7
|
+
|
8
|
+
require 'veewee'
|
9
|
+
|
10
|
+
class VeeweeCLI < Thor
|
11
|
+
|
12
|
+
desc "build [NAME]", "build the box defined"
|
13
|
+
method_options :force => :boolean
|
14
|
+
def build(box_name)
|
15
|
+
|
16
|
+
|
17
|
+
logger=ANSI::Logger.new(STDOUT)
|
18
|
+
logger.level=Object.const_get('ANSI').const_get('Logger').const_get('DEBUG')
|
19
|
+
logger.formatter do |severity, timestamp, progname, msg|
|
20
|
+
# "#{progname}@#{timestamp} - #{severity}::#{msg}"
|
21
|
+
"#{msg}\n"
|
22
|
+
end
|
23
|
+
logger.ansicolor=false
|
24
|
+
|
25
|
+
|
26
|
+
puts "Building box #{box_name}"
|
27
|
+
box=Veewee::Environment.new(options,logger).get_builder(:vmfusion,options).get_box(box_name,box_name,options)
|
28
|
+
box.build(options)
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
VeeweeCLI.start
|
data/lib/fission.rb
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'fileutils'
|
2
|
+
require 'optparse'
|
3
|
+
require 'ostruct'
|
4
|
+
require 'yaml'
|
5
|
+
|
6
|
+
$:.unshift File.join(File.dirname(__FILE__), *%w[.. lib])
|
7
|
+
|
8
|
+
require 'fission/error'
|
9
|
+
require 'fission/cli'
|
10
|
+
require 'fission/command'
|
11
|
+
require 'fission/command/clone'
|
12
|
+
require 'fission/command/snapshot_create'
|
13
|
+
require 'fission/command/snapshot_list'
|
14
|
+
require 'fission/command/snapshot_revert'
|
15
|
+
require 'fission/command/start'
|
16
|
+
require 'fission/command/status'
|
17
|
+
require 'fission/command/stop'
|
18
|
+
require 'fission/command/suspend'
|
19
|
+
require 'fission/command/delete'
|
20
|
+
require 'fission/config'
|
21
|
+
require 'fission/core_ext/class'
|
22
|
+
require 'fission/core_ext/file'
|
23
|
+
require 'fission/core_ext/object'
|
24
|
+
require 'fission/fusion'
|
25
|
+
require 'fission/metadata'
|
26
|
+
require 'fission/response'
|
27
|
+
require 'fission/ui'
|
28
|
+
require 'fission/vm'
|
29
|
+
require 'fission/version'
|
30
|
+
|
31
|
+
module Fission
|
32
|
+
extend self
|
33
|
+
|
34
|
+
def config
|
35
|
+
@config ||= Fission::Config.new
|
36
|
+
end
|
37
|
+
|
38
|
+
def ui
|
39
|
+
@ui ||= Fission::UI.new
|
40
|
+
end
|
41
|
+
end
|
data/lib/fission/cli.rb
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
module Fission
|
2
|
+
class CLI
|
3
|
+
def self.execute(args=ARGV)
|
4
|
+
optparse = OptionParser.new do |opts|
|
5
|
+
opts.banner = "\nUsage: fission [options] COMMAND [arguments]"
|
6
|
+
|
7
|
+
opts.on_head('-v', '--version', 'Output the version of fission') do
|
8
|
+
Fission.ui.output Fission::VERSION
|
9
|
+
exit(0)
|
10
|
+
end
|
11
|
+
|
12
|
+
opts.on_head('-h', '--help', 'Displays this message') do
|
13
|
+
show_all_help(optparse)
|
14
|
+
exit(0)
|
15
|
+
end
|
16
|
+
|
17
|
+
opts.define_tail do
|
18
|
+
commands_banner
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
begin
|
24
|
+
optparse.order! args
|
25
|
+
rescue OptionParser::InvalidOption => e
|
26
|
+
Fission.ui.output e
|
27
|
+
show_all_help(optparse)
|
28
|
+
exit(1)
|
29
|
+
end
|
30
|
+
|
31
|
+
if commands.include?(args.first)
|
32
|
+
@cmd = Fission::Command.const_get(args.first.capitalize).new args.drop 1
|
33
|
+
elsif is_snapshot_command?(args)
|
34
|
+
klass = args.take(2).map {|c| c.capitalize}.join('')
|
35
|
+
@cmd = Fission::Command.const_get(klass).new args.drop 2
|
36
|
+
else
|
37
|
+
show_all_help(optparse)
|
38
|
+
exit(1)
|
39
|
+
end
|
40
|
+
|
41
|
+
begin
|
42
|
+
@cmd.execute
|
43
|
+
rescue Error => e
|
44
|
+
puts "Error: #{e}"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
def self.commands
|
49
|
+
cmds = Dir.entries(File.join(File.dirname(__FILE__), 'command')).select do |file|
|
50
|
+
!File.directory? file
|
51
|
+
end
|
52
|
+
|
53
|
+
cmds.map { |cmd| File.basename(cmd, '.rb').gsub '_', ' ' }
|
54
|
+
end
|
55
|
+
|
56
|
+
private
|
57
|
+
def self.is_snapshot_command?(args)
|
58
|
+
args.first == 'snapshot' && args.count > 1 && commands.include?(args.take(2).join(' '))
|
59
|
+
end
|
60
|
+
|
61
|
+
def self.commands_banner
|
62
|
+
text = "\nCommands:\n"
|
63
|
+
Fission::Command.descendants.each do |command_klass|
|
64
|
+
text << (command_klass.send :help)
|
65
|
+
end
|
66
|
+
|
67
|
+
text
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.show_all_help(options)
|
71
|
+
Fission.ui.output options
|
72
|
+
Fission.ui.output commands_banner
|
73
|
+
end
|
74
|
+
|
75
|
+
end
|
76
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
module Fission
|
2
|
+
class Command
|
3
|
+
class Clone < Command
|
4
|
+
|
5
|
+
def initialize(args=[])
|
6
|
+
super
|
7
|
+
@options.start = false
|
8
|
+
end
|
9
|
+
|
10
|
+
def execute
|
11
|
+
option_parser.parse! @args
|
12
|
+
|
13
|
+
unless @args.count > 1
|
14
|
+
Fission.ui.output self.class.help
|
15
|
+
Fission.ui.output ""
|
16
|
+
Fission.ui.output_and_exit "Incorrect arguments for clone command", 1
|
17
|
+
end
|
18
|
+
|
19
|
+
source_vm_name = @args.first
|
20
|
+
target_vm_name = @args[1]
|
21
|
+
source_vm=Fission::VM.new(source_vm_name)
|
22
|
+
target_vm=Fission::VM.new(target_vm_name)
|
23
|
+
|
24
|
+
unless source_vm.exists?
|
25
|
+
Fission.ui.output_and_exit "Unable to find the source vm #{source_vm_name} (#{source_vm.path})", 1
|
26
|
+
end
|
27
|
+
|
28
|
+
if target_vm.exists?
|
29
|
+
Fission::ui.output_and_exit "The target vm #{target_vm_name} already exists", 1
|
30
|
+
end
|
31
|
+
|
32
|
+
clone_task = Fission::VM.clone source_vm_name, target_vm_name
|
33
|
+
|
34
|
+
if clone_task.successful?
|
35
|
+
Fission.ui.output ''
|
36
|
+
Fission.ui.output 'Clone complete!'
|
37
|
+
|
38
|
+
if @options.start
|
39
|
+
Fission.ui.output "Starting '#{target_vm_name}'"
|
40
|
+
|
41
|
+
start_task = target_vm.start
|
42
|
+
|
43
|
+
if start_task.successful?
|
44
|
+
Fission.ui.output "VM '#{target_vm_name}' started"
|
45
|
+
else
|
46
|
+
Fission.ui.output_and_exit "There was an error starting the VM. The error was:\n#{start_task.output}", start_task.code
|
47
|
+
end
|
48
|
+
end
|
49
|
+
else
|
50
|
+
Fission.ui.output_and_exit "There was an error cloning the VM. The error was:\n#{clone_task.output}", clone_task.code
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
def option_parser
|
55
|
+
optparse = OptionParser.new do |opts|
|
56
|
+
opts.banner = "\nclone usage: fission clone source_vm target_vm [options]"
|
57
|
+
|
58
|
+
opts.on '--start', 'Start the VM after cloning' do
|
59
|
+
@options.start = true
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
optparse
|
64
|
+
end
|
65
|
+
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
module Fission
|
2
|
+
class Command
|
3
|
+
class Delete < Command
|
4
|
+
|
5
|
+
def initialize(args=[])
|
6
|
+
super
|
7
|
+
@options.force = false
|
8
|
+
end
|
9
|
+
|
10
|
+
def execute
|
11
|
+
option_parser.parse! @args
|
12
|
+
|
13
|
+
if @args.count < 1
|
14
|
+
Fission.ui.output self.class.help
|
15
|
+
Fission.ui.output ""
|
16
|
+
Fission.ui.output_and_exit "Incorrect arguments for delete command", 1
|
17
|
+
end
|
18
|
+
|
19
|
+
target_vm_name = @args.first
|
20
|
+
target_vm=Fission::VM.new(target_vm_name)
|
21
|
+
unless target_vm.exists?
|
22
|
+
Fission.ui.output_and_exit "Vm #{target_vm_name} does not exist at (#{target_vm.path})", 1
|
23
|
+
end
|
24
|
+
|
25
|
+
if target_vm.running?
|
26
|
+
Fission.ui.output 'VM is currently running'
|
27
|
+
if @options.force
|
28
|
+
Fission.ui.output 'Going to stop it'
|
29
|
+
Fission::Command::Stop.new([target_vm_name]).execute
|
30
|
+
else
|
31
|
+
Fission.ui.output_and_exit "Either stop/suspend the VM or use '--force' and try again.", 1
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
|
36
|
+
if Fission::Fusion.running?
|
37
|
+
Fission.ui.output 'It looks like the Fusion GUI is currently running'
|
38
|
+
|
39
|
+
if @options.force
|
40
|
+
Fission.ui.output 'The Fusion metadata for the VM may not be removed completely'
|
41
|
+
else
|
42
|
+
Fission.ui.output "Either exit the Fusion GUI or use '--force' and try again"
|
43
|
+
Fission.ui.output_and_exit "NOTE: Forcing a VM deletion with the Fusion GUI running may not clean up all of the VM metadata", 1
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
delete_task = Fission::VM.delete target_vm_name
|
48
|
+
|
49
|
+
if delete_task.successful?
|
50
|
+
Fission.ui.output ''
|
51
|
+
Fission.ui.output "Deletion complete!"
|
52
|
+
else
|
53
|
+
Fission.ui.output_and_exit "There was an error deleting the VM. The error was:\n#{delete_task.output}", delete_task.code
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def option_parser
|
58
|
+
optparse = OptionParser.new do |opts|
|
59
|
+
opts.banner = "\ndelete usage: fission delete target_vm [--force]"
|
60
|
+
|
61
|
+
opts.on '--force', "Stop the VM if it's running and then delete it" do
|
62
|
+
@options.force = true
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
optparse
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
module Fission
|
2
|
+
class Command
|
3
|
+
class SnapshotCreate < Command
|
4
|
+
|
5
|
+
def initialize(args=[])
|
6
|
+
super
|
7
|
+
end
|
8
|
+
|
9
|
+
def execute
|
10
|
+
unless @args.count == 2
|
11
|
+
Fission.ui.output self.class.help
|
12
|
+
Fission.ui.output ""
|
13
|
+
Fission.ui.output_and_exit "Incorrect arguments for snapshot create command", 1
|
14
|
+
end
|
15
|
+
|
16
|
+
vm_name, snap_name = @args.take 2
|
17
|
+
|
18
|
+
vm = Fission::VM.new vm_name
|
19
|
+
unless vm.exists?
|
20
|
+
Fission.ui.output_and_exit "Unable to find the VM #{vm_name} (#{Fission::VM.path(vm_name)})", 1
|
21
|
+
end
|
22
|
+
|
23
|
+
unless vm.running?
|
24
|
+
Fission.ui.output "VM '#{vm_name}' is not running"
|
25
|
+
Fission.ui.output_and_exit 'A snapshot cannot be created unless the VM is running', 1
|
26
|
+
end
|
27
|
+
|
28
|
+
if vm.snapshots.include? snap_name
|
29
|
+
Fission.ui.output_and_exit "VM '#{vm_name}' already has a snapshot named '#{snap_name}'", 1
|
30
|
+
end
|
31
|
+
|
32
|
+
Fission.ui.output "Creating snapshot"
|
33
|
+
task = vm.create_snapshot(snap_name)
|
34
|
+
|
35
|
+
if task.successful?
|
36
|
+
Fission.ui.output "Snapshot '#{snap_name}' created"
|
37
|
+
else
|
38
|
+
Fission.ui.output_and_exit "There was an error creating the snapshot. The error was:\n#{task.output}", task.code
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
def option_parser
|
43
|
+
optparse = OptionParser.new do |opts|
|
44
|
+
opts.banner = "\nsnapshot create: fission snapshot create my_vm snapshot_1"
|
45
|
+
end
|
46
|
+
|
47
|
+
optparse
|
48
|
+
end
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|