veewee 0.3.0.alpha8 → 0.3.0.alpha9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. data/Gemfile +5 -0
  2. data/Rakefile +41 -1
  3. data/bin/veewee +1 -1
  4. data/doc/kvm.md +9 -1
  5. data/doc/vagrant.md +5 -5
  6. data/lib/veewee/command/vagrant/basebox.rb +2 -0
  7. data/lib/veewee/command/vagrant/build.rb +3 -0
  8. data/lib/veewee/command/vagrant/export.rb +10 -0
  9. data/lib/veewee/command/vagrant/screenshot.rb +45 -0
  10. data/lib/veewee/command/virtualbox.rb +13 -0
  11. data/lib/veewee/config.rb +2 -2
  12. data/lib/veewee/provider/core/box/build.rb +29 -16
  13. data/lib/veewee/provider/core/box/exec.rb +4 -4
  14. data/lib/veewee/provider/core/box/floppy.rb +1 -1
  15. data/lib/veewee/provider/core/helper/iso.rb +14 -10
  16. data/lib/veewee/provider/core/helper/ssh.rb +6 -5
  17. data/lib/veewee/provider/core/helper/tcp.rb +5 -3
  18. data/lib/veewee/provider/kvm/box/destroy.rb +1 -1
  19. data/lib/veewee/provider/parallels/box/destroy.rb +1 -2
  20. data/lib/veewee/provider/virtualbox/box.rb +1 -0
  21. data/lib/veewee/provider/virtualbox/box/build.rb +1 -1
  22. data/lib/veewee/provider/virtualbox/box/destroy.rb +1 -3
  23. data/lib/veewee/provider/virtualbox/box/export_vagrant.rb +3 -2
  24. data/lib/veewee/provider/virtualbox/box/helper/console_type.rb +5 -5
  25. data/lib/veewee/provider/virtualbox/box/helper/natinterface.rb +1 -1
  26. data/lib/veewee/provider/virtualbox/box/screenshot.rb +24 -0
  27. data/lib/veewee/provider/virtualbox/box/up.rb +2 -3
  28. data/lib/veewee/provider/vmfusion/box/destroy.rb +1 -2
  29. data/lib/veewee/provider/vmfusion/box/helper/vnc.rb +1 -1
  30. data/lib/veewee/templates.rb +1 -1
  31. data/lib/veewee/version.rb +1 -1
  32. data/templates/CentOS-4.8-i386/definition.rb +1 -1
  33. data/templates/CentOS-5.5-i386-netboot/definition.rb +1 -1
  34. data/templates/CentOS-5.5-x86_64-netboot/definition.rb +1 -1
  35. data/templates/CentOS-5.7-i386-netboot/definition.rb +1 -1
  36. data/templates/CentOS-5.7-i386-netboot/ks.cfg +2 -0
  37. data/templates/CentOS-5.7-x86_64-netboot/definition.rb +1 -1
  38. data/templates/CentOS-5.7-x86_64-netboot/ks.cfg +3 -1
  39. data/templates/CentOS-5.8-i386-netboot/definition.rb +16 -0
  40. data/templates/CentOS-5.8-i386-netboot/ks.cfg +47 -0
  41. data/templates/CentOS-5.8-i386-netboot/postinstall.sh +53 -0
  42. data/templates/CentOS-5.8-i386/definition.rb +16 -0
  43. data/templates/CentOS-5.8-i386/ks.cfg +47 -0
  44. data/templates/CentOS-5.8-i386/postinstall.sh +53 -0
  45. data/templates/CentOS-5.8-x86_64-netboot/definition.rb +16 -0
  46. data/templates/CentOS-5.8-x86_64-netboot/ks.cfg +47 -0
  47. data/templates/CentOS-5.8-x86_64-netboot/postinstall.sh +53 -0
  48. data/templates/CentOS-5.8-x86_64/definition.rb +16 -0
  49. data/templates/CentOS-5.8-x86_64/ks.cfg +47 -0
  50. data/templates/CentOS-5.8-x86_64/postinstall.sh +60 -0
  51. data/templates/Debian-6.0.4-i386-netboot/ruby.sh +1 -1
  52. data/templates/Fedora-16-i386/definition.rb +1 -1
  53. data/templates/Fedora-16-x86_64/definition.rb +1 -1
  54. data/templates/archlinux-x86_64/definition.rb +1 -1
  55. data/templates/ubuntu-11.04-server-amd64/ruby.sh +4 -4
  56. data/templates/ubuntu-11.04-server-i386/postinstall.sh +12 -12
  57. data/templates/ubuntu-12.04-server-amd64-packages/definition.rb +3 -3
  58. data/templates/ubuntu-12.04-server-amd64/definition.rb +3 -3
  59. data/templates/ubuntu-12.04-server-i386/definition.rb +37 -0
  60. data/templates/ubuntu-12.04-server-i386/postinstall.sh +93 -0
  61. data/templates/ubuntu-12.04-server-i386/preseed.cfg +87 -0
  62. data/templates/windows-2008R2-amd64/definition.rb +1 -1
  63. metadata +20 -3
@@ -0,0 +1,53 @@
1
+ #http://chrisadams.me.uk/2010/05/10/setting-up-a-centos-base-box-for-development-and-testing-with-vagrant/
2
+ #kernel source is needed for vbox additions
3
+
4
+ date > /etc/vagrant_box_build_time
5
+
6
+ yum -y install gcc bzip2 make kernel-devel-`uname -r`
7
+ #yum -y update
8
+ #yum -y upgrade
9
+
10
+ yum -y install gcc-c++ zlib-devel openssl-devel readline-devel sqlite3-devel
11
+ yum -y erase wireless-tools gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
12
+ yum -y clean all
13
+
14
+ #Installing ruby
15
+ cd /tmp
16
+ wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p180.tar.gz || fail "Could not download Ruby source"
17
+ tar xzvf ruby-1.9.2-p180.tar.gz
18
+ cd ruby-1.9.2-p180
19
+ ./configure
20
+ make && make install
21
+ cd /tmp
22
+ rm -rf /tmp/ruby-1.9.2-p180
23
+ rm /tmp/ruby-1.9.2-p180.tar.gz
24
+ ln -s /usr/local/bin/ruby /usr/bin/ruby # Create a sym link for the same path
25
+ ln -s /usr/local/bin/gem /usr/bin/gem # Create a sym link for the same path
26
+
27
+ #Installing chef & Puppet
28
+ /usr/bin/gem install chef --no-ri --no-rdoc
29
+ /usr/bin/gem install puppet --no-ri --no-rdoc
30
+
31
+ #Installing vagrant keys
32
+ mkdir /home/vagrant/.ssh
33
+ chmod 700 /home/vagrant/.ssh
34
+ cd /home/vagrant/.ssh
35
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
36
+ chown -R vagrant /home/vagrant/.ssh
37
+
38
+ #Installing the virtualbox guest additions
39
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
40
+ cd /tmp
41
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
42
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
43
+ sh /mnt/VBoxLinuxAdditions.run
44
+ umount /mnt
45
+
46
+ rm VBoxGuestAdditions_$VBOX_VERSION.iso
47
+
48
+ sed -i "s/^.*requiretty/#Defaults requiretty/" /etc/sudoers
49
+ sed -i "s/^\(.*env_keep = \"\)/\1PATH /" /etc/sudoers
50
+
51
+ #poweroff -h
52
+
53
+ exit
@@ -0,0 +1,16 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1', :memory_size=> '384',
3
+ :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off', :ioapic => 'on', :pae => 'on',
4
+ :os_type_id => 'RedHat_64',
5
+ :iso_file => "CentOS-5.8-x86_64-netinstall.iso",
6
+ :iso_src => "http://mirrors.arsc.edu/centos/5.8/isos/x86_64/CentOS-5.8-x86_64-netinstall.iso",
7
+ :iso_md5 => "6425035e9adee4b8653a85f59877ac5b",
8
+ :iso_download_timeout => 1000,
9
+ :boot_wait => "10", :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
10
+ :kickstart_port => "7122", :kickstart_timeout => 10000, :kickstart_file => "ks.cfg",
11
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
12
+ :ssh_host_port => "7222", :ssh_guest_port => "22",
13
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
14
+ :shutdown_cmd => "/sbin/halt -h -p",
15
+ :postinstall_files => [ "postinstall.sh"], :postinstall_timeout => 10000
16
+ })
@@ -0,0 +1,47 @@
1
+ # Kickstart file automatically generated by anaconda.
2
+
3
+ install
4
+ url --url=http://mirrors.arsc.edu/centos/5.8/os/x86_64/
5
+ lang en_US.UTF-8
6
+ langsupport --default=en_US.UTF-8 en_US.UTF-8
7
+ keyboard us
8
+ xconfig --card "VMWare" --videoram 16384 --hsync 31.5-37.9 --vsync 50-70 --resolution 800x600 --depth 16
9
+ network --device eth0 --bootproto dhcp
10
+ rootpw --iscrypted $1$vSG8FjAu$ekQ0grf16hS4G93HTPcco/
11
+ firewall --enabled --trust eth0 --ssh
12
+ selinux --enforcing
13
+ authconfig --enableshadow --enablemd5
14
+ timezone America/New_York
15
+ bootloader --location=mbr
16
+ # The following is the partition information you requested
17
+ # Note that any partitions you deleted are not expressed
18
+ # here so unless you clear all partitions first, this is
19
+ # not guaranteed to work
20
+ clearpart --all --drives=sda --initlabel
21
+ part /boot --fstype ext3 --size=100 --ondisk=sda
22
+ part pv.2 --size=0 --grow --ondisk=sda
23
+ volgroup VolGroup00 --pesize=32768 pv.2
24
+ logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=528 --grow --maxsize=1056
25
+ logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow
26
+ reboot
27
+
28
+ %packages
29
+ #@ admin-tools
30
+ #@ text-internet
31
+ #@ dialup
32
+ #@ smb-server
33
+ #@ web-server
34
+ #@ printing
35
+ #@ server-cfg
36
+ @ core
37
+ grub
38
+ e2fsprogs
39
+ lvm2
40
+ kernel-devel
41
+ kernel-headers
42
+
43
+ %post
44
+ /usr/sbin/groupadd vagrant
45
+ /usr/sbin/useradd vagrant -g vagrant -G wheel
46
+ echo "vagrant"|passwd --stdin vagrant
47
+ echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
@@ -0,0 +1,53 @@
1
+ #http://chrisadams.me.uk/2010/05/10/setting-up-a-centos-base-box-for-development-and-testing-with-vagrant/
2
+ #kernel source is needed for vbox additions
3
+
4
+ date > /etc/vagrant_box_build_time
5
+
6
+ yum -y install gcc bzip2 make kernel-devel-`uname -r`
7
+ #yum -y update
8
+ #yum -y upgrade
9
+
10
+ yum -y install gcc-c++ zlib-devel openssl-devel readline-devel sqlite3-devel
11
+ yum -y erase wireless-tools gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
12
+ yum -y clean all
13
+
14
+ #Installing ruby
15
+ cd /tmp
16
+ wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p180.tar.gz || fail "Could not download Ruby source"
17
+ tar xzvf ruby-1.9.2-p180.tar.gz
18
+ cd ruby-1.9.2-p180
19
+ ./configure
20
+ make && make install
21
+ cd /tmp
22
+ rm -rf /tmp/ruby-1.9.2-p180
23
+ rm /tmp/ruby-1.9.2-p180.tar.gz
24
+ ln -s /usr/local/bin/ruby /usr/bin/ruby # Create a sym link for the same path
25
+ ln -s /usr/local/bin/gem /usr/bin/gem # Create a sym link for the same path
26
+
27
+ #Installing chef & Puppet
28
+ /usr/bin/gem install chef --no-ri --no-rdoc
29
+ /usr/bin/gem install puppet --no-ri --no-rdoc
30
+
31
+ #Installing vagrant keys
32
+ mkdir /home/vagrant/.ssh
33
+ chmod 700 /home/vagrant/.ssh
34
+ cd /home/vagrant/.ssh
35
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
36
+ chown -R vagrant /home/vagrant/.ssh
37
+
38
+ #Installing the virtualbox guest additions
39
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
40
+ cd /tmp
41
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
42
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
43
+ sh /mnt/VBoxLinuxAdditions.run
44
+ umount /mnt
45
+
46
+ rm VBoxGuestAdditions_$VBOX_VERSION.iso
47
+
48
+ sed -i "s/^.*requiretty/#Defaults requiretty/" /etc/sudoers
49
+ sed -i "s/^\(.*env_keep = \"\)/\1PATH /" /etc/sudoers
50
+
51
+ #poweroff -h
52
+
53
+ exit
@@ -0,0 +1,16 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1', :memory_size=> '384',
3
+ :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off', :ioapic => 'on', :pae => 'on',
4
+ :os_type_id => 'RedHat_64',
5
+ :iso_file => "CentOS-5.8-x86_64-bin-DVD-1of2.iso",
6
+ :iso_src => "http://mirrors.arsc.edu/centos/5.8/isos/x86_64/CentOS-5.8-x86_64-bin-DVD-1of2.iso",
7
+ :iso_md5 => "8a3bf0030f192022943f83fe6b2cf373",
8
+ :iso_download_timeout => 10000,
9
+ :boot_wait => "10", :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
10
+ :kickstart_port => "7122", :kickstart_timeout => 10000, :kickstart_file => "ks.cfg",
11
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
12
+ :ssh_host_port => "7222", :ssh_guest_port => "22",
13
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
14
+ :shutdown_cmd => "/sbin/halt -h -p",
15
+ :postinstall_files => [ "postinstall.sh"], :postinstall_timeout => 10000
16
+ })
@@ -0,0 +1,47 @@
1
+ # Kickstart file automatically generated by anaconda.
2
+
3
+ install
4
+ cdrom
5
+ lang en_US.UTF-8
6
+ langsupport --default=en_US.UTF-8 en_US.UTF-8
7
+ keyboard us
8
+ xconfig --card "VMWare" --videoram 16384 --hsync 31.5-37.9 --vsync 50-70 --resolution 800x600 --depth 16
9
+ network --device eth0 --bootproto dhcp
10
+ rootpw --iscrypted $1$vSG8FjAu$ekQ0grf16hS4G93HTPcco/
11
+ firewall --enabled --trust eth0 --ssh
12
+ selinux --enforcing
13
+ authconfig --enableshadow --enablemd5
14
+ timezone America/New_York
15
+ bootloader --location=mbr
16
+ # The following is the partition information you requested
17
+ # Note that any partitions you deleted are not expressed
18
+ # here so unless you clear all partitions first, this is
19
+ # not guaranteed to work
20
+ clearpart --all --drives=sda --initlabel
21
+ part /boot --fstype ext3 --size=100 --ondisk=sda
22
+ part pv.2 --size=0 --grow --ondisk=sda
23
+ volgroup VolGroup00 --pesize=32768 pv.2
24
+ logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=528 --grow --maxsize=1056
25
+ logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow
26
+ reboot
27
+
28
+ %packages
29
+ #@ admin-tools
30
+ #@ text-internet
31
+ #@ dialup
32
+ #@ smb-server
33
+ #@ web-server
34
+ #@ printing
35
+ #@ server-cfg
36
+ @ core
37
+ grub
38
+ e2fsprogs
39
+ lvm2
40
+ kernel-devel
41
+ kernel-headers
42
+
43
+ %post
44
+ /usr/sbin/groupadd vagrant
45
+ /usr/sbin/useradd vagrant -g vagrant -G wheel
46
+ echo "vagrant"|passwd --stdin vagrant
47
+ echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
@@ -0,0 +1,60 @@
1
+ #http://chrisadams.me.uk/2010/05/10/setting-up-a-centos-base-box-for-development-and-testing-with-vagrant/
2
+
3
+ date > /etc/vagrant_box_build_time
4
+
5
+ fail()
6
+ {
7
+ echo "FATAL: $*"
8
+ exit 1
9
+ }
10
+
11
+ #kernel source is needed for vbox additions
12
+ yum -y install gcc bzip2 make kernel-devel-`uname -r`
13
+ #yum -y update
14
+ #yum -y upgrade
15
+
16
+ yum -y install gcc-c++ zlib-devel openssl-devel readline-devel sqlite3-devel
17
+ yum -y erase gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
18
+ yum -y clean all
19
+
20
+ #Installing ruby
21
+ cd /tmp
22
+ wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p180.tar.gz || fail "Could not download Ruby source"
23
+ tar xzvf ruby-1.9.2-p180.tar.gz
24
+ cd ruby-1.9.2-p180
25
+ ./configure
26
+ make && make install
27
+ cd /tmp
28
+ rm -rf /tmp/ruby-1.9.2-p180
29
+ rm /tmp/ruby-1.9.2-p180.tar.gz
30
+ ln -s /usr/local/bin/ruby /usr/bin/ruby # Create a sym link for the same path
31
+ ln -s /usr/local/bin/gem /usr/bin/gem # Create a sym link for the same path
32
+
33
+ #Installing chef & Puppet
34
+ echo "Installing chef and puppet"
35
+ /usr/local/bin/gem install chef --no-ri --no-rdoc || fail "Could not install chef"
36
+ /usr/local/bin/gem install puppet --no-ri --no-rdoc || fail "Could not install puppet"
37
+
38
+ #Installing vagrant keys
39
+ mkdir /home/vagrant/.ssh
40
+ chmod 700 /home/vagrant/.ssh
41
+ cd /home/vagrant/.ssh
42
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
43
+ chown -R vagrant /home/vagrant/.ssh
44
+
45
+ #Installing the virtualbox guest additions
46
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
47
+ cd /tmp
48
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
49
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
50
+ sh /mnt/VBoxLinuxAdditions.run
51
+ umount /mnt
52
+
53
+ rm VBoxGuestAdditions_$VBOX_VERSION.iso
54
+
55
+ sed -i "s/^.*requiretty/#Defaults requiretty/" /etc/sudoers
56
+ sed -i "s/^\(.*env_keep = \"\)/\1PATH /" /etc/sudoers
57
+
58
+ #poweroff -h
59
+
60
+ exit
@@ -2,7 +2,7 @@
2
2
  apt-get -y install ruby ruby-dev libopenssl-ruby1.8 irb ri rdoc
3
3
 
4
4
  # Install Rubygems from source
5
- rg_ver=1.6.2
5
+ rg_ver=1.8.22
6
6
  curl -o /tmp/rubygems-${rg_ver}.zip \
7
7
  "http://production.cf.rubygems.org/rubygems/rubygems-${rg_ver}.zip"
8
8
  (cd /tmp && unzip rubygems-${rg_ver}.zip && \
@@ -9,7 +9,7 @@ Veewee::Session.declare({
9
9
  :iso_download_timeout => 1000,
10
10
  :boot_wait => "10", :boot_cmd_sequence => [ '<Tab> linux text biosdevname=0 ks=http://%IP%:%PORT%/ks.cfg<Enter><Enter>' ],
11
11
  :kickstart_port => "7122", :kickstart_timeout => 10000, :kickstart_file => "ks.cfg",
12
- :ssh_login_timeout => "100", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
12
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
13
13
  :ssh_host_port => "7222", :ssh_guest_port => "22",
14
14
  :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
15
15
  :shutdown_cmd => "/sbin/halt -h -p",
@@ -9,7 +9,7 @@ Veewee::Session.declare({
9
9
  :iso_download_timeout => 1000,
10
10
  :boot_wait => "10", :boot_cmd_sequence => [ '<Tab> linux text biosdevname=0 ks=http://%IP%:%PORT%/ks.cfg<Enter><Enter>' ],
11
11
  :kickstart_port => "7122", :kickstart_timeout => 10000, :kickstart_file => "ks.cfg",
12
- :ssh_login_timeout => "100", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
12
+ :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
13
13
  :ssh_host_port => "7222", :ssh_guest_port => "22",
14
14
  :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
15
15
  :shutdown_cmd => "/sbin/halt -h -p",
@@ -18,7 +18,7 @@ Veewee::Definition.declare({
18
18
  'vagrant<Enter>',
19
19
  'vagrant<Enter>',
20
20
  '/etc/rc.d/sshd start<Enter><Wait>',
21
- 'sleep 3 && wget http://%IP%:%PORT/aif.cfg<Enter>',
21
+ 'sleep 3 && wget http://%IP%:%PORT%/aif.cfg<Enter>',
22
22
  ],
23
23
  :kickstart_port => "7122", :kickstart_timeout => "10000", :kickstart_file => "aif.cfg",
24
24
  :ssh_login_timeout => "10000", :ssh_user => "root", :ssh_password => "vagrant", :ssh_key => "",
@@ -17,12 +17,12 @@ cd ..
17
17
  rm -rf ruby-1.8.7-p334*
18
18
 
19
19
  # Install RubyGems 1.7.2
20
- wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
21
- tar xzf rubygems-1.7.2.tgz
22
- cd rubygems-1.7.2
20
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.8.11.tgz
21
+ tar xzf rubygems-1.8.11.tgz
22
+ cd rubygems-1.8.11
23
23
  /opt/ruby/bin/ruby setup.rb
24
24
  cd ..
25
- rm -rf rubygems-1.7.2*
25
+ rm -rf rubygems-1.8.11
26
26
 
27
27
  # Add /opt/ruby/bin to the global path as the last resort so
28
28
  # Ruby, RubyGems, and Chef/Puppet are visible
@@ -2,6 +2,14 @@
2
2
 
3
3
  date > /etc/vagrant_box_build_time
4
4
 
5
+ # Apt-install various things necessary for Ruby, guest additions,
6
+ # etc., and remove optional things to trim down the machine.
7
+ apt-get -y update
8
+ apt-get -y upgrade
9
+ apt-get -y install linux-headers-$(uname -r) build-essential
10
+ apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
11
+ apt-get clean
12
+
5
13
  # Installing the virtualbox guest additions
6
14
  apt-get -y install dkms
7
15
  VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
@@ -13,14 +21,6 @@ umount /mnt
13
21
 
14
22
  rm VBoxGuestAdditions_$VBOX_VERSION.iso
15
23
 
16
- # Apt-install various things necessary for Ruby, guest additions,
17
- # etc., and remove optional things to trim down the machine.
18
- apt-get -y update
19
- apt-get -y upgrade
20
- apt-get -y install linux-headers-$(uname -r) build-essential
21
- apt-get -y install zlib1g-dev libssl-dev libreadline5-dev
22
- apt-get clean
23
-
24
24
  # Setup sudo to allow no-password sudo for "admin"
25
25
  cp /etc/sudoers /etc/sudoers.orig
26
26
  sed -i -e '/Defaults\s\+env_reset/a Defaults\texempt_group=admin' /etc/sudoers
@@ -43,12 +43,12 @@ cd ..
43
43
  rm -rf ruby-1.8.7-p334*
44
44
 
45
45
  # Install RubyGems 1.7.2
46
- wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
47
- tar xzf rubygems-1.7.2.tgz
48
- cd rubygems-1.7.2
46
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.8.11.tgz
47
+ tar xzf rubygems-1.8.11.tgz
48
+ cd rubygems-1.8.11
49
49
  /opt/ruby/bin/ruby setup.rb
50
50
  cd ..
51
- rm -rf rubygems-1.7.2*
51
+ rm -rf rubygems-1.8.11
52
52
 
53
53
  # Installing chef & Puppet
54
54
  /opt/ruby/bin/gem install chef --no-ri --no-rdoc
@@ -7,9 +7,9 @@ Veewee::Session.declare({
7
7
  :disk_format => 'VDI',
8
8
  :hostiocache => 'off',
9
9
  :os_type_id => 'Ubuntu_64',
10
- :iso_file => "precise-alternate-amd64.iso",
11
- :iso_src => "http://cdimage.ubuntu.com/daily/current/precise-alternate-amd64.iso",
12
- :iso_md5 => `curl -s http://cdimage.ubuntu.com/daily/current/MD5SUMS -o - | awk '{if ( $2 == \"*precise-alternate-amd64.iso\") print $1 }'`.strip,
10
+ :iso_file => "ubuntu-12.04-server-amd64.iso",
11
+ :iso_src => "http://releases.ubuntu.com/12.04/ubuntu-12.04-server-amd64.iso",
12
+ :iso_md5 => 'f2e921788d35bbdf0336d05d228136eb',
13
13
  :iso_download_timeout => "1000",
14
14
  :boot_wait => "4",
15
15
  :boot_cmd_sequence => [
@@ -7,9 +7,9 @@ Veewee::Session.declare({
7
7
  :disk_format => 'VDI',
8
8
  :hostiocache => 'off',
9
9
  :os_type_id => 'Ubuntu_64',
10
- :iso_file => "precise-alternate-amd64.iso",
11
- :iso_src => "http://cdimage.ubuntu.com/daily/current/precise-alternate-amd64.iso",
12
- :iso_md5 => `curl -s http://cdimage.ubuntu.com/daily/current/MD5SUMS -o - | awk '{if ( $2 == \"*precise-alternate-amd64.iso\") print $1 }'`.strip,
10
+ :iso_file => "ubuntu-12.04-server-amd64.iso",
11
+ :iso_src => "http://releases.ubuntu.com/12.04/ubuntu-12.04-server-amd64.iso",
12
+ :iso_md5 => 'f2e921788d35bbdf0336d05d228136eb',
13
13
  :iso_download_timeout => "1000",
14
14
  :boot_wait => "4",
15
15
  :boot_cmd_sequence => [
@@ -0,0 +1,37 @@
1
+ # obviously this is using the "alternate" ISO, not the "server" ISO, but that
2
+ # is only because it hasn't been released yet.
3
+ Veewee::Session.declare({
4
+ :cpu_count => '2',
5
+ :memory_size=> '2048',
6
+ :disk_size => '10140',
7
+ :disk_format => 'VDI',
8
+ :hostiocache => 'off',
9
+ :os_type_id => 'Ubuntu',
10
+ :iso_file => "ubuntu-12.04-server-i386.iso",
11
+ :iso_src => "http://releases.ubuntu.com/12.04/ubuntu-12.04-server-i386.iso",
12
+ :iso_md5 => '32184a83c8b5e6031e1264e5c499bc03',
13
+ :iso_download_timeout => "1000",
14
+ :boot_wait => "4",
15
+ :boot_cmd_sequence => [
16
+ '<Esc><Esc><Enter>',
17
+ '/install/vmlinuz noapic preseed/url=http://%IP%:%PORT%/preseed.cfg ',
18
+ 'debian-installer=en_US auto locale=en_US kbd-chooser/method=us ',
19
+ 'hostname=%NAME% ',
20
+ 'fb=false debconf/frontend=noninteractive ',
21
+ 'keyboard-configuration/layout=USA keyboard-configuration/variant=USA console-setup/ask_detect=false ',
22
+ 'initrd=/install/initrd.gz -- <Enter>'
23
+ ],
24
+ :kickstart_port => "7122",
25
+ :kickstart_timeout => "10000",
26
+ :kickstart_file => "preseed.cfg",
27
+ :ssh_login_timeout => "10000",
28
+ :ssh_user => "vagrant",
29
+ :ssh_password => "vagrant",
30
+ :ssh_key => "",
31
+ :ssh_host_port => "7222",
32
+ :ssh_guest_port => "22",
33
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
34
+ :shutdown_cmd => "shutdown -P now",
35
+ :postinstall_files => [ "postinstall.sh"],
36
+ :postinstall_timeout => "10000"
37
+ })