veewee 0.1.22 → 0.1.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/.gitignore +1 -0
  2. data/Gemfile.lock +1 -1
  3. data/lib/java/README.txt +5 -0
  4. data/lib/java/dir2floppy.jar +0 -0
  5. data/lib/java/dir2floppy.java +137 -0
  6. data/lib/veewee/session.rb +57 -10
  7. data/lib/veewee/version.rb +1 -1
  8. data/lib/veewee/web.rb +1 -1
  9. data/templates/CentOS-4.8-i386/definition.rb +2 -1
  10. data/templates/CentOS-4.8-i386/postinstall.sh +1 -1
  11. data/templates/{CentOS-5.5-i386-netboot → CentOS-5.6-i386-netboot}/definition.rb +4 -4
  12. data/templates/{CentOS-5.5-i386-netboot → CentOS-5.6-i386-netboot}/ks.cfg +0 -0
  13. data/templates/{CentOS-5.5-i386-netboot → CentOS-5.6-i386-netboot}/postinstall.sh +1 -1
  14. data/templates/{CentOS-5.5-i386 → CentOS-5.6-i386}/definition.rb +4 -2
  15. data/templates/{CentOS-5.5-i386 → CentOS-5.6-i386}/ks.cfg +0 -0
  16. data/templates/{CentOS-5.5-i386 → CentOS-5.6-i386}/postinstall.sh +1 -1
  17. data/templates/Debian-6.0.1a-amd64-netboot/postinstall.sh +1 -1
  18. data/templates/Fedora-14-amd64-netboot/definition.rb +1 -1
  19. data/templates/Fedora-14-amd64-netboot/postinstall.sh +1 -1
  20. data/templates/Fedora-14-amd64/definition.rb +1 -1
  21. data/templates/Fedora-14-amd64/postinstall.sh +1 -1
  22. data/templates/Fedora-14-i386-netboot/definition.rb +1 -1
  23. data/templates/Fedora-14-i386-netboot/postinstall.sh +1 -1
  24. data/templates/Fedora-14-i386/definition.rb +1 -1
  25. data/templates/Fedora-14-i386/postinstall.sh +1 -1
  26. data/templates/gentoo-latest-i386-experimental/definition.rb +29 -0
  27. data/templates/gentoo-latest-i386-experimental/postinstall.sh +182 -0
  28. data/templates/opensuse-11.4-i386-experimental/README +11 -0
  29. data/templates/opensuse-11.4-i386-experimental/autoinst.xml +1269 -0
  30. data/templates/opensuse-11.4-i386-experimental/autoinst.xml.generated +1269 -0
  31. data/templates/opensuse-11.4-i386-experimental/autoinst.xml.tweaked +1269 -0
  32. data/templates/opensuse-11.4-i386-experimental/definition.rb +31 -0
  33. data/templates/opensuse-11.4-i386-experimental/postinstall.sh +89 -0
  34. data/templates/solaris-11-express-i386/postinstall.sh +5 -5
  35. data/templates/ubuntu-10.04.2-server-amd64/postinstall.sh +44 -15
  36. data/templates/ubuntu-10.04.2-server-i386/postinstall.sh +46 -16
  37. data/templates/ubuntu-10.10-server-amd64-netboot/postinstall.sh +46 -16
  38. data/templates/ubuntu-10.10-server-amd64/postinstall.sh +45 -15
  39. data/templates/ubuntu-10.10-server-i386-netboot/postinstall.sh +45 -15
  40. data/templates/ubuntu-10.10-server-i386/postinstall.sh +45 -15
  41. data/templates/ubuntu-11.04-server-amd64/definition.rb +24 -0
  42. data/templates/ubuntu-11.04-server-amd64/postinstall.sh +73 -0
  43. data/templates/ubuntu-11.04-server-amd64/preseed.cfg +87 -0
  44. data/templates/ubuntu-11.04-server-i386/definition.rb +24 -0
  45. data/templates/ubuntu-11.04-server-i386/postinstall.sh +73 -0
  46. data/templates/ubuntu-11.04-server-i386/preseed.cfg +87 -0
  47. data/templates/windows-2008R2-amd64-experimental/Autounattend.xml +132 -0
  48. data/templates/windows-2008R2-amd64-experimental/README.md +33 -0
  49. data/templates/windows-2008R2-amd64-experimental/cygwin-setup.exe +0 -0
  50. data/templates/windows-2008R2-amd64-experimental/cygwin-sshd.bat +38 -0
  51. data/templates/windows-2008R2-amd64-experimental/definition.rb +17 -0
  52. data/templates/windows-2008R2-amd64-experimental/install-winrm.bat +6 -0
  53. data/templates/windows-2008R2-amd64-experimental/note-virtualbox-additions.txt +23 -0
  54. data/templates/windows-2008R2-amd64-experimental/postinstall.sh +48 -0
  55. data/templates/windows-2008R2-amd64-experimental/setup.exe +0 -0
  56. data/templates/windows-2008R2-amd64-experimental/winrm.rb +8 -0
  57. metadata +37 -15
  58. data/templates/ubuntu-10.04.2-server-i386/postinstall2.sh +0 -9
  59. data/templates/ubuntu-10.10-server-amd64-netboot/postinstall2.sh +0 -9
  60. data/templates/ubuntu-10.10-server-amd64/postinstall2.sh +0 -9
  61. data/templates/ubuntu-10.10-server-i386-netboot/postinstall2.sh +0 -9
  62. data/templates/ubuntu-10.10-server-i386/postinstall2.sh +0 -9
@@ -1,37 +1,58 @@
1
- #http://adrianbravo.tumblr.com/post/644860401
1
+ # postinstall.sh created from Mitchell's official lucid32/64 baseboxes
2
2
 
3
- #Updating the box
3
+ # Apt-install various things necessary for Ruby, guest additions,
4
+ # etc., and remove optional things to trim down the machine.
4
5
  apt-get -y update
5
- #apt-get -y upgrade
6
- apt-get -y remove apparmor
6
+ apt-get -y upgrade
7
7
  apt-get -y install linux-headers-$(uname -r) build-essential
8
8
  apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
9
9
  apt-get clean
10
10
 
11
- #Setting up sudo
11
+ # Setup sudo to allow no-password sudo for "admin"
12
12
  cp /etc/sudoers /etc/sudoers.orig
13
+ sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
13
14
  sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
14
15
 
15
- #Installing ruby
16
- wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz
17
- tar xzvf ruby-enterprise-1.8.7-2010.02.tar.gz
18
- ./ruby-enterprise-1.8.7-2010.02/installer -a /opt/ruby --no-dev-docs --dont-install-useful-gems
19
- echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/rubyenterprise.sh
20
- rm -rf ./ruby-enterprise-1.8.7-2010.02/
21
- rm ruby-enterprise-1.8.7-2010.02.tar.gz
16
+ # Install NFS client
17
+ apt-get -y install nfs-common
22
18
 
23
- #Installing chef & Puppet
19
+ # Install Ruby from source in /opt so that users of Vagrant
20
+ # can install their own Rubies using packages or however.
21
+ # We must install the 1.8.x series since Puppet doesn't support
22
+ # Ruby 1.9 yet.
23
+ wget http://ftp.ruby-lang.org/pub/ruby/ruby-1.8.7-p334.tar.gz
24
+ tar xvzf ruby-1.8.7-p334.tar.gz
25
+ cd ruby-1.8.7-p334
26
+ ./configure --prefix=/opt/ruby
27
+ make
28
+ make install
29
+ cd ..
30
+ rm -rf ruby-1.8.7-p334*
31
+
32
+ # Install RubyGems 1.7.2
33
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
34
+ tar xzf rubygems-1.7.2.tgz
35
+ cd rubygems-1.7.2
36
+ /opt/ruby/bin/ruby setup.rb
37
+ cd ..
38
+ rm -rf rubygems-1.7.2*
39
+
40
+ # Installing chef & Puppet
24
41
  /opt/ruby/bin/gem install chef --no-ri --no-rdoc
25
42
  /opt/ruby/bin/gem install puppet --no-ri --no-rdoc
26
43
 
27
- #Installing vagrant keys
44
+ # Add /opt/ruby/bin to the global path as the last resort so
45
+ # Ruby, RubyGems, and Chef/Puppet are visible
46
+ echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
47
+
48
+ # Installing vagrant keys
28
49
  mkdir /home/vagrant/.ssh
29
50
  chmod 700 /home/vagrant/.ssh
30
51
  cd /home/vagrant/.ssh
31
52
  wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
32
53
  chown -R vagrant /home/vagrant/.ssh
33
54
 
34
- #Installing the virtualbox guest additions
55
+ # Installing the virtualbox guest additions
35
56
  VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
36
57
  cd /tmp
37
58
  wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
@@ -40,4 +61,13 @@ sh /mnt/VBoxLinuxAdditions.run
40
61
  umount /mnt
41
62
 
42
63
  rm VBoxGuestAdditions_$VBOX_VERSION.iso
64
+
65
+ # Remove items used for building, since they aren't needed anymore
66
+ apt-get -y remove linux-headers-$(uname -r) build-essential
67
+ apt-get -y autoremove
68
+
69
+ # Zero out the free space to save space in the final image:
70
+ dd if=/dev/zero of=/EMPTY bs=1M
71
+ rm -f /EMPTY
72
+
43
73
  exit
@@ -1,37 +1,58 @@
1
- #http://adrianbravo.tumblr.com/post/644860401
1
+ # postinstall.sh created from Mitchell's official lucid32/64 baseboxes
2
2
 
3
- #Updating the box
3
+ # Apt-install various things necessary for Ruby, guest additions,
4
+ # etc., and remove optional things to trim down the machine.
4
5
  apt-get -y update
5
- #apt-get -y upgrade
6
- apt-get -y remove apparmor
6
+ apt-get -y upgrade
7
7
  apt-get -y install linux-headers-$(uname -r) build-essential
8
8
  apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
9
9
  apt-get clean
10
10
 
11
- #Setting up sudo
11
+ # Setup sudo to allow no-password sudo for "admin"
12
12
  cp /etc/sudoers /etc/sudoers.orig
13
+ sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
13
14
  sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
14
15
 
15
- #Installing ruby
16
- wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz
17
- tar xzvf ruby-enterprise-1.8.7-2010.02.tar.gz
18
- ./ruby-enterprise-1.8.7-2010.02/installer -a /opt/ruby --no-dev-docs --dont-install-useful-gems
19
- echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/rubyenterprise.sh
20
- rm -rf ./ruby-enterprise-1.8.7-2010.02/
21
- rm ruby-enterprise-1.8.7-2010.02.tar.gz
16
+ # Install NFS client
17
+ apt-get -y install nfs-common
22
18
 
23
- #Installing chef & Puppet
19
+ # Install Ruby from source in /opt so that users of Vagrant
20
+ # can install their own Rubies using packages or however.
21
+ # We must install the 1.8.x series since Puppet doesn't support
22
+ # Ruby 1.9 yet.
23
+ wget http://ftp.ruby-lang.org/pub/ruby/ruby-1.8.7-p334.tar.gz
24
+ tar xvzf ruby-1.8.7-p334.tar.gz
25
+ cd ruby-1.8.7-p334
26
+ ./configure --prefix=/opt/ruby
27
+ make
28
+ make install
29
+ cd ..
30
+ rm -rf ruby-1.8.7-p334*
31
+
32
+ # Install RubyGems 1.7.2
33
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
34
+ tar xzf rubygems-1.7.2.tgz
35
+ cd rubygems-1.7.2
36
+ /opt/ruby/bin/ruby setup.rb
37
+ cd ..
38
+ rm -rf rubygems-1.7.2*
39
+
40
+ # Installing chef & Puppet
24
41
  /opt/ruby/bin/gem install chef --no-ri --no-rdoc
25
42
  /opt/ruby/bin/gem install puppet --no-ri --no-rdoc
26
43
 
27
- #Installing vagrant keys
44
+ # Add /opt/ruby/bin to the global path as the last resort so
45
+ # Ruby, RubyGems, and Chef/Puppet are visible
46
+ echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
47
+
48
+ # Installing vagrant keys
28
49
  mkdir /home/vagrant/.ssh
29
50
  chmod 700 /home/vagrant/.ssh
30
51
  cd /home/vagrant/.ssh
31
52
  wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
32
53
  chown -R vagrant /home/vagrant/.ssh
33
54
 
34
- #Installing the virtualbox guest additions
55
+ # Installing the virtualbox guest additions
35
56
  VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
36
57
  cd /tmp
37
58
  wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
@@ -40,4 +61,13 @@ sh /mnt/VBoxLinuxAdditions.run
40
61
  umount /mnt
41
62
 
42
63
  rm VBoxGuestAdditions_$VBOX_VERSION.iso
64
+
65
+ # Remove items used for building, since they aren't needed anymore
66
+ apt-get -y remove linux-headers-$(uname -r) build-essential
67
+ apt-get -y autoremove
68
+
69
+ # Zero out the free space to save space in the final image:
70
+ dd if=/dev/zero of=/EMPTY bs=1M
71
+ rm -f /EMPTY
72
+
43
73
  exit
@@ -0,0 +1,24 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1', :memory_size=> '384',
3
+ :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
4
+ :os_type_id => 'Ubuntu64',
5
+ :iso_file => "ubuntu-11.04-server-amd64.iso",
6
+ :iso_src => "http://releases.ubuntu.com/11.04/ubuntu-11.04-server-amd64.iso",
7
+ :iso_md5 => "ce1cee108de737d7492e37069eed538e",
8
+ :iso_download_timeout => "1000",
9
+ :boot_wait => "10", :boot_cmd_sequence => [
10
+ '<Esc><Esc><Enter>',
11
+ '/install/vmlinuz noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
12
+ 'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
13
+ 'hostname=%NAME% ',
14
+ 'fb=false debconf/frontend=noninteractive ',
15
+ 'keyboard-configuration/layout=USA keyboard-configuration/variant=USA console-setup/ask_detect=false ',
16
+ 'initrd=/install/initrd.gz -- <Enter>'
17
+ ],
18
+ :kickstart_port => "7122", :kickstart_timeout => "10000", :kickstart_file => "preseed.cfg",
19
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
20
+ :ssh_host_port => "7222", :ssh_guest_port => "22",
21
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
22
+ :shutdown_cmd => "shutdown -P now",
23
+ :postinstall_files => [ "postinstall.sh"], :postinstall_timeout => "10000"
24
+ })
@@ -0,0 +1,73 @@
1
+ # postinstall.sh created from Mitchell's official lucid32/64 baseboxes
2
+
3
+ # Apt-install various things necessary for Ruby, guest additions,
4
+ # etc., and remove optional things to trim down the machine.
5
+ apt-get -y update
6
+ apt-get -y upgrade
7
+ apt-get -y install linux-headers-$(uname -r) build-essential
8
+ apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
9
+ apt-get clean
10
+
11
+ # Setup sudo to allow no-password sudo for "admin"
12
+ cp /etc/sudoers /etc/sudoers.orig
13
+ sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
14
+ sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
15
+
16
+ # Install NFS client
17
+ apt-get -y install nfs-common
18
+
19
+ # Install Ruby from source in /opt so that users of Vagrant
20
+ # can install their own Rubies using packages or however.
21
+ # We must install the 1.8.x series since Puppet doesn't support
22
+ # Ruby 1.9 yet.
23
+ wget http://ftp.ruby-lang.org/pub/ruby/ruby-1.8.7-p334.tar.gz
24
+ tar xvzf ruby-1.8.7-p334.tar.gz
25
+ cd ruby-1.8.7-p334
26
+ ./configure --prefix=/opt/ruby
27
+ make
28
+ make install
29
+ cd ..
30
+ rm -rf ruby-1.8.7-p334*
31
+
32
+ # Install RubyGems 1.7.2
33
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
34
+ tar xzf rubygems-1.7.2.tgz
35
+ cd rubygems-1.7.2
36
+ /opt/ruby/bin/ruby setup.rb
37
+ cd ..
38
+ rm -rf rubygems-1.7.2*
39
+
40
+ # Installing chef & Puppet
41
+ /opt/ruby/bin/gem install chef --no-ri --no-rdoc
42
+ /opt/ruby/bin/gem install puppet --no-ri --no-rdoc
43
+
44
+ # Add /opt/ruby/bin to the global path as the last resort so
45
+ # Ruby, RubyGems, and Chef/Puppet are visible
46
+ echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
47
+
48
+ # Installing vagrant keys
49
+ mkdir /home/vagrant/.ssh
50
+ chmod 700 /home/vagrant/.ssh
51
+ cd /home/vagrant/.ssh
52
+ wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
53
+ chown -R vagrant /home/vagrant/.ssh
54
+
55
+ # Installing the virtualbox guest additions
56
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
57
+ cd /tmp
58
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
59
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
60
+ sh /mnt/VBoxLinuxAdditions.run
61
+ umount /mnt
62
+
63
+ rm VBoxGuestAdditions_$VBOX_VERSION.iso
64
+
65
+ # Remove items used for building, since they aren't needed anymore
66
+ apt-get -y remove linux-headers-$(uname -r) build-essential
67
+ apt-get -y autoremove
68
+
69
+ # Zero out the free space to save space in the final image:
70
+ dd if=/dev/zero of=/EMPTY bs=1M
71
+ rm -f /EMPTY
72
+
73
+ exit
@@ -0,0 +1,87 @@
1
+ ## Options to set on the command line
2
+ d-i debian-installer/locale string en_US.utf8
3
+ d-i console-setup/ask_detect boolean false
4
+ d-i console-setup/layout string USA
5
+
6
+ #d-i netcfg/get_hostname string dummy
7
+ d-i netcfg/get_hostname string unassigned-hostname
8
+ d-i netcfg/get_domain string unassigned-domain
9
+
10
+ # Continue without a default route
11
+ # Not working , specify a dummy in the DHCP
12
+ #d-i netcfg/no_default_route boolean
13
+
14
+ d-i time/zone string UTC
15
+ d-i clock-setup/utc-auto boolean true
16
+ d-i clock-setup/utc boolean true
17
+
18
+ d-i kbd-chooser/method select American English
19
+
20
+ d-i netcfg/wireless_wep string
21
+
22
+ d-i base-installer/kernel/override-image string linux-server
23
+ #d-i base-installer/kernel/override-image string linux-image-2.6.32-21-generic
24
+
25
+ # Choices: Dialog, Readline, Gnome, Kde, Editor, Noninteractive
26
+ d-i debconf debconf/frontend select Noninteractive
27
+
28
+ d-i pkgsel/install-language-support boolean false
29
+ tasksel tasksel/first multiselect standard, ubuntu-server
30
+
31
+ #d-i partman-auto/method string regular
32
+ d-i partman-auto/method string lvm
33
+ #d-i partman-auto/purge_lvm_from_device boolean true
34
+
35
+ d-i partman-lvm/confirm boolean true
36
+ d-i partman-lvm/device_remove_lvm boolean true
37
+ d-i partman-auto/choose_recipe select atomic
38
+
39
+ d-i partman/confirm_write_new_label boolean true
40
+ d-i partman/confirm_nooverwrite boolean true
41
+ d-i partman/choose_partition select finish
42
+ d-i partman/confirm boolean true
43
+
44
+ #http://ubuntu-virginia.ubuntuforums.org/showthread.php?p=9626883
45
+ #Message: "write the changes to disk and configure lvm preseed"
46
+ #http://serverfault.com/questions/189328/ubuntu-kickstart-installation-using-lvm-waits-for-input
47
+ #preseed partman-lvm/confirm_nooverwrite boolean true
48
+
49
+ # Write the changes to disks and configure LVM?
50
+ d-i partman-lvm/confirm boolean true
51
+ d-i partman-lvm/confirm_nooverwrite boolean true
52
+ d-i partman-auto-lvm/guided_size string max
53
+
54
+ ## Default user, we can get away with a recipe to change this
55
+ d-i passwd/user-fullname string vagrant
56
+ d-i passwd/username string vagrant
57
+ d-i passwd/user-password password vagrant
58
+ d-i passwd/user-password-again password vagrant
59
+ d-i user-setup/encrypt-home boolean false
60
+ d-i user-setup/allow-password-weak boolean true
61
+
62
+ ## minimum is puppet and ssh and ntp
63
+ # Individual additional packages to install
64
+ d-i pkgsel/include string openssh-server ntp
65
+
66
+ # Whether to upgrade packages after debootstrap.
67
+ # Allowed values: none, safe-upgrade, full-upgrade
68
+ d-i pkgsel/upgrade select full-upgrade
69
+
70
+ d-i grub-installer/only_debian boolean true
71
+ d-i grub-installer/with_other_os boolean true
72
+ d-i finish-install/reboot_in_progress note
73
+
74
+ #For the update
75
+ d-i pkgsel/update-policy select none
76
+
77
+ # debconf-get-selections --install
78
+ #Use mirror
79
+ #d-i apt-setup/use_mirror boolean true
80
+ #d-i mirror/country string manual
81
+ #choose-mirror-bin mirror/protocol string http
82
+ #choose-mirror-bin mirror/http/hostname string 192.168.4.150
83
+ #choose-mirror-bin mirror/http/directory string /ubuntu
84
+ #choose-mirror-bin mirror/suite select maverick
85
+ #d-i debian-installer/allow_unauthenticated string true
86
+
87
+ choose-mirror-bin mirror/http/proxy string
@@ -0,0 +1,24 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1', :memory_size=> '384',
3
+ :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
4
+ :os_type_id => 'Ubuntu',
5
+ :iso_file => "ubuntu-11.04-server-i386.iso",
6
+ :iso_src => "http://releases.ubuntu.com/11.04/ubuntu-11.04-server-i386.iso",
7
+ :iso_md5 => "ce1cee108de737d7492e37069eed538e",
8
+ :iso_download_timeout => "1000",
9
+ :boot_wait => "10", :boot_cmd_sequence => [
10
+ '<Esc><Esc><Enter>',
11
+ '/install/vmlinuz noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
12
+ 'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
13
+ 'hostname=%NAME% ',
14
+ 'fb=false debconf/frontend=noninteractive ',
15
+ 'keyboard-configuration/layout=USA keyboard-configuration/variant=USA console-setup/ask_detect=false ',
16
+ 'initrd=/install/initrd.gz -- <Enter>'
17
+ ],
18
+ :kickstart_port => "7122", :kickstart_timeout => "10000", :kickstart_file => "preseed.cfg",
19
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
20
+ :ssh_host_port => "7222", :ssh_guest_port => "22",
21
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
22
+ :shutdown_cmd => "shutdown -P now",
23
+ :postinstall_files => [ "postinstall.sh"], :postinstall_timeout => "10000"
24
+ })
@@ -0,0 +1,73 @@
1
+ # postinstall.sh created from Mitchell's official lucid32/64 baseboxes
2
+
3
+ # Apt-install various things necessary for Ruby, guest additions,
4
+ # etc., and remove optional things to trim down the machine.
5
+ apt-get -y update
6
+ apt-get -y upgrade
7
+ apt-get -y install linux-headers-$(uname -r) build-essential
8
+ apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
9
+ apt-get clean
10
+
11
+ # Setup sudo to allow no-password sudo for "admin"
12
+ cp /etc/sudoers /etc/sudoers.orig
13
+ sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
14
+ sed -i -e 's/%admin ALL=(ALL) ALL/%admin ALL=NOPASSWD:ALL/g' /etc/sudoers
15
+
16
+ # Install NFS client
17
+ apt-get -y install nfs-common
18
+
19
+ # Install Ruby from source in /opt so that users of Vagrant
20
+ # can install their own Rubies using packages or however.
21
+ # We must install the 1.8.x series since Puppet doesn't support
22
+ # Ruby 1.9 yet.
23
+ wget http://ftp.ruby-lang.org/pub/ruby/ruby-1.8.7-p334.tar.gz
24
+ tar xvzf ruby-1.8.7-p334.tar.gz
25
+ cd ruby-1.8.7-p334
26
+ ./configure --prefix=/opt/ruby
27
+ make
28
+ make install
29
+ cd ..
30
+ rm -rf ruby-1.8.7-p334*
31
+
32
+ # Install RubyGems 1.7.2
33
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
34
+ tar xzf rubygems-1.7.2.tgz
35
+ cd rubygems-1.7.2
36
+ /opt/ruby/bin/ruby setup.rb
37
+ cd ..
38
+ rm -rf rubygems-1.7.2*
39
+
40
+ # Installing chef & Puppet
41
+ /opt/ruby/bin/gem install chef --no-ri --no-rdoc
42
+ /opt/ruby/bin/gem install puppet --no-ri --no-rdoc
43
+
44
+ # Add /opt/ruby/bin to the global path as the last resort so
45
+ # Ruby, RubyGems, and Chef/Puppet are visible
46
+ echo 'PATH=$PATH:/opt/ruby/bin/'> /etc/profile.d/vagrantruby.sh
47
+
48
+ # Installing vagrant keys
49
+ mkdir /home/vagrant/.ssh
50
+ chmod 700 /home/vagrant/.ssh
51
+ cd /home/vagrant/.ssh
52
+ wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
53
+ chown -R vagrant /home/vagrant/.ssh
54
+
55
+ # Installing the virtualbox guest additions
56
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
57
+ cd /tmp
58
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
59
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
60
+ sh /mnt/VBoxLinuxAdditions.run
61
+ umount /mnt
62
+
63
+ rm VBoxGuestAdditions_$VBOX_VERSION.iso
64
+
65
+ # Remove items used for building, since they aren't needed anymore
66
+ apt-get -y remove linux-headers-$(uname -r) build-essential
67
+ apt-get -y autoremove
68
+
69
+ # Zero out the free space to save space in the final image:
70
+ dd if=/dev/zero of=/EMPTY bs=1M
71
+ rm -f /EMPTY
72
+
73
+ exit