veewee 0.3.0.beta1 → 0.3.0.beta2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. data/README.md +7 -7
  2. data/Rakefile +29 -10
  3. data/bin/veewee +5 -0
  4. data/doc/vagrant.md +2 -2
  5. data/lib/veewee/command/fusion.rb +1 -0
  6. data/lib/veewee/command/kvm.rb +1 -0
  7. data/lib/veewee/command/parallels.rb +1 -0
  8. data/lib/veewee/command/vagrant/validate.rb +5 -3
  9. data/lib/veewee/command/vbox.rb +1 -0
  10. data/lib/veewee/config/ostypes.yml +36 -2
  11. data/lib/veewee/definition.rb +2 -2
  12. data/lib/veewee/environment.rb +3 -1
  13. data/lib/veewee/provider/core/box.rb +2 -0
  14. data/lib/veewee/provider/core/box/build.rb +2 -2
  15. data/lib/veewee/provider/core/box/scp.rb +1 -1
  16. data/lib/veewee/provider/core/box/validate_tags.rb +58 -0
  17. data/lib/veewee/provider/core/provider.rb +5 -0
  18. data/lib/veewee/provider/kvm/box/create.rb +2 -2
  19. data/lib/veewee/provider/kvm/box/helper/console_type.rb +3 -3
  20. data/lib/veewee/provider/kvm/box/helper/ip.rb +2 -2
  21. data/lib/veewee/provider/kvm/box/helper/status.rb +2 -2
  22. data/lib/veewee/provider/kvm/box/validate_kvm.rb +1 -33
  23. data/lib/veewee/provider/kvm/provider.rb +1 -1
  24. data/lib/veewee/provider/parallels/box/validate_parallels.rb +1 -35
  25. data/lib/veewee/provider/virtualbox/box/helper/create.rb +3 -3
  26. data/lib/veewee/provider/virtualbox/box/validate_vagrant.rb +2 -42
  27. data/lib/veewee/provider/vmfusion/box/helper/buildinfo.rb +7 -3
  28. data/lib/veewee/provider/vmfusion/box/template.rb +9 -0
  29. data/lib/veewee/provider/vmfusion/box/template.vmx.erb +1 -1
  30. data/lib/veewee/provider/vmfusion/box/validate_vmfusion.rb +1 -35
  31. data/lib/veewee/provider/vmfusion/provider.rb +14 -10
  32. data/lib/veewee/version.rb +1 -1
  33. data/templates/CentOS-6.0-i386-netboot/base.sh +14 -0
  34. data/templates/CentOS-6.0-i386-netboot/chef.sh +3 -0
  35. data/templates/CentOS-6.0-i386-netboot/cleanup.sh +5 -0
  36. data/templates/CentOS-6.0-i386-netboot/definition.rb +33 -9
  37. data/templates/CentOS-6.0-i386-netboot/ks.cfg +19 -30
  38. data/templates/CentOS-6.0-i386-netboot/puppet.sh +12 -0
  39. data/templates/CentOS-6.0-i386-netboot/ruby.sh +3 -0
  40. data/templates/CentOS-6.0-i386-netboot/vagrant.sh +18 -0
  41. data/templates/CentOS-6.0-i386-netboot/virtualbox.sh +8 -0
  42. data/templates/CentOS-6.0-i386-netboot/zerodisk.sh +3 -0
  43. data/templates/CentOS-6.0-i386/base.sh +22 -0
  44. data/templates/CentOS-6.0-i386/chef.sh +3 -0
  45. data/templates/CentOS-6.0-i386/cleanup.sh +5 -0
  46. data/templates/CentOS-6.0-i386/definition.rb +33 -12
  47. data/templates/CentOS-6.0-i386/ks.cfg +12 -18
  48. data/templates/CentOS-6.0-i386/puppet.sh +12 -0
  49. data/templates/CentOS-6.0-i386/ruby.sh +3 -0
  50. data/templates/CentOS-6.0-i386/vagrant.sh +18 -0
  51. data/templates/CentOS-6.0-i386/virtualbox.sh +8 -0
  52. data/templates/CentOS-6.0-i386/zerodisk.sh +3 -0
  53. data/templates/CentOS-6.0-x86_64-minimal/base.sh +22 -0
  54. data/templates/CentOS-6.0-x86_64-minimal/chef.sh +3 -0
  55. data/templates/CentOS-6.0-x86_64-minimal/cleanup.sh +5 -0
  56. data/templates/CentOS-6.0-x86_64-minimal/definition.rb +33 -10
  57. data/templates/CentOS-6.0-x86_64-minimal/ks.cfg +11 -7
  58. data/templates/CentOS-6.0-x86_64-minimal/puppet.sh +12 -0
  59. data/templates/CentOS-6.0-x86_64-minimal/ruby.sh +3 -0
  60. data/templates/CentOS-6.0-x86_64-minimal/vagrant.sh +18 -0
  61. data/templates/CentOS-6.0-x86_64-minimal/virtualbox.sh +8 -0
  62. data/templates/CentOS-6.0-x86_64-minimal/zerodisk.sh +3 -0
  63. data/templates/CentOS-6.0-x86_64-netboot/base.sh +14 -0
  64. data/templates/CentOS-6.0-x86_64-netboot/chef.sh +3 -0
  65. data/templates/CentOS-6.0-x86_64-netboot/cleanup.sh +5 -0
  66. data/templates/CentOS-6.0-x86_64-netboot/definition.rb +32 -8
  67. data/templates/CentOS-6.0-x86_64-netboot/ks.cfg +18 -30
  68. data/templates/CentOS-6.0-x86_64-netboot/puppet.sh +12 -0
  69. data/templates/CentOS-6.0-x86_64-netboot/ruby.sh +3 -0
  70. data/templates/CentOS-6.0-x86_64-netboot/vagrant.sh +18 -0
  71. data/templates/CentOS-6.0-x86_64-netboot/virtualbox.sh +8 -0
  72. data/templates/CentOS-6.0-x86_64-netboot/zerodisk.sh +3 -0
  73. data/templates/CentOS-6.0-x86_64/base.sh +10 -0
  74. data/templates/CentOS-6.0-x86_64/chef.sh +1 -0
  75. data/templates/CentOS-6.0-x86_64/cleanup.sh +1 -0
  76. data/templates/CentOS-6.0-x86_64/definition.rb +16 -7
  77. data/templates/CentOS-6.0-x86_64/ks.cfg +12 -18
  78. data/templates/CentOS-6.0-x86_64/puppet.sh +1 -0
  79. data/templates/CentOS-6.0-x86_64/ruby.sh +2 -1
  80. data/templates/CentOS-6.0-x86_64/vagrant.sh +13 -4
  81. data/templates/CentOS-6.0-x86_64/virtualbox.sh +4 -4
  82. data/templates/CentOS-6.0-x86_64/zerodisk.sh +3 -0
  83. data/templates/CentOS-6.1-x86_64-minimal/base.sh +10 -1
  84. data/templates/CentOS-6.1-x86_64-minimal/chef.sh +1 -0
  85. data/templates/CentOS-6.1-x86_64-minimal/cleanup.sh +1 -0
  86. data/templates/CentOS-6.1-x86_64-minimal/definition.rb +3 -2
  87. data/templates/CentOS-6.1-x86_64-minimal/ks.cfg +13 -18
  88. data/templates/CentOS-6.1-x86_64-minimal/puppet.sh +1 -0
  89. data/templates/CentOS-6.1-x86_64-minimal/ruby.sh +2 -1
  90. data/templates/CentOS-6.1-x86_64-minimal/vagrant.sh +6 -4
  91. data/templates/CentOS-6.1-x86_64-minimal/virtualbox.sh +2 -2
  92. data/templates/CentOS-6.1-x86_64-minimal/zerodisk.sh +3 -0
  93. data/templates/CentOS-6.1-x86_64-netboot/base.sh +2 -1
  94. data/templates/CentOS-6.1-x86_64-netboot/chef.sh +1 -0
  95. data/templates/CentOS-6.1-x86_64-netboot/cleanup.sh +1 -0
  96. data/templates/CentOS-6.1-x86_64-netboot/definition.rb +7 -6
  97. data/templates/CentOS-6.1-x86_64-netboot/ks.cfg +13 -17
  98. data/templates/CentOS-6.1-x86_64-netboot/puppet.sh +1 -0
  99. data/templates/CentOS-6.1-x86_64-netboot/ruby.sh +2 -1
  100. data/templates/CentOS-6.1-x86_64-netboot/vagrant.sh +6 -4
  101. data/templates/CentOS-6.1-x86_64-netboot/virtualbox.sh +3 -3
  102. data/templates/CentOS-6.1-x86_64-netboot/zerodisk.sh +3 -0
  103. data/templates/CentOS-6.2-i386-minimal/base.sh +8 -0
  104. data/templates/CentOS-6.2-i386-minimal/definition.rb +3 -2
  105. data/templates/CentOS-6.2-i386-minimal/ks.cfg +4 -1
  106. data/templates/CentOS-6.2-i386-minimal/vagrant.sh +5 -4
  107. data/templates/CentOS-6.2-i386-minimal/zerodisk.sh +3 -0
  108. data/templates/CentOS-6.2-x86_64-minimal/base.sh +8 -0
  109. data/templates/CentOS-6.2-x86_64-minimal/definition.rb +3 -2
  110. data/templates/CentOS-6.2-x86_64-minimal/ks.cfg +4 -1
  111. data/templates/CentOS-6.2-x86_64-minimal/vagrant.sh +5 -4
  112. data/templates/CentOS-6.2-x86_64-minimal/zerodisk.sh +3 -0
  113. data/templates/CentOS-6.2-x86_64-netboot/base.sh +2 -1
  114. data/templates/CentOS-6.2-x86_64-netboot/chef.sh +1 -0
  115. data/templates/CentOS-6.2-x86_64-netboot/cleanup.sh +1 -0
  116. data/templates/CentOS-6.2-x86_64-netboot/definition.rb +7 -6
  117. data/templates/CentOS-6.2-x86_64-netboot/ks.cfg +13 -17
  118. data/templates/CentOS-6.2-x86_64-netboot/puppet.sh +1 -0
  119. data/templates/CentOS-6.2-x86_64-netboot/ruby.sh +2 -1
  120. data/templates/CentOS-6.2-x86_64-netboot/vagrant.sh +6 -4
  121. data/templates/CentOS-6.2-x86_64-netboot/virtualbox.sh +3 -3
  122. data/templates/CentOS-6.2-x86_64-netboot/zerodisk.sh +3 -0
  123. data/templates/CentOS-6.3-i386-minimal/definition.rb +2 -1
  124. data/templates/CentOS-6.3-i386-minimal/vagrant.sh +5 -4
  125. data/templates/CentOS-6.3-i386-minimal/zerodisk.sh +3 -0
  126. data/templates/CentOS-6.3-x86_64-minimal/definition.rb +2 -1
  127. data/templates/CentOS-6.3-x86_64-minimal/vagrant.sh +5 -4
  128. data/templates/CentOS-6.3-x86_64-minimal/zerodisk.sh +3 -0
  129. data/templates/Debian-5.0.10-amd64-netboot/base.sh +9 -0
  130. data/templates/Debian-5.0.10-amd64-netboot/chef.sh +2 -0
  131. data/templates/Debian-5.0.10-amd64-netboot/cleanup.sh +10 -0
  132. data/templates/Debian-5.0.10-amd64-netboot/definition.rb +39 -0
  133. data/templates/Debian-5.0.10-amd64-netboot/postinstall.sh +60 -0
  134. data/templates/Debian-5.0.10-amd64-netboot/preseed.cfg +312 -0
  135. data/templates/Debian-5.0.10-amd64-netboot/puppet.sh +2 -0
  136. data/templates/Debian-5.0.10-amd64-netboot/ruby.sh +11 -0
  137. data/templates/Debian-5.0.10-amd64-netboot/vagrant.sh +14 -0
  138. data/templates/Debian-5.0.10-amd64-netboot/virtualbox.sh +15 -0
  139. data/templates/Debian-5.0.10-i386-netboot/base.sh +9 -0
  140. data/templates/Debian-5.0.10-i386-netboot/chef.sh +2 -0
  141. data/templates/Debian-5.0.10-i386-netboot/cleanup.sh +10 -0
  142. data/templates/Debian-5.0.10-i386-netboot/definition.rb +39 -0
  143. data/templates/Debian-5.0.10-i386-netboot/postinstall.sh +60 -0
  144. data/templates/Debian-5.0.10-i386-netboot/preseed.cfg +312 -0
  145. data/templates/Debian-5.0.10-i386-netboot/puppet.sh +2 -0
  146. data/templates/Debian-5.0.10-i386-netboot/ruby.sh +11 -0
  147. data/templates/Debian-5.0.10-i386-netboot/vagrant.sh +14 -0
  148. data/templates/Debian-5.0.10-i386-netboot/virtualbox.sh +15 -0
  149. data/templates/Debian-5.0.8-amd64-netboot/preseed.cfg +2 -2
  150. data/templates/Debian-5.0.8-i386-netboot/preseed.cfg +2 -2
  151. data/templates/Debian-6.0.4-amd64-netboot/definition.rb +1 -1
  152. data/templates/Debian-6.0.4-amd64-netboot/vagrant.sh +5 -1
  153. data/templates/Debian-6.0.4-i386-netboot/definition.rb +1 -1
  154. data/templates/Debian-6.0.4-i386-netboot/vagrant.sh +5 -1
  155. data/templates/Debian-6.0.5-amd64-netboot/vagrant.sh +5 -1
  156. data/templates/Debian-6.0.5-i386-netboot/vagrant.sh +5 -1
  157. data/templates/SLES-11-SP1-DVD-i586-GM/postinstall.sh +3 -0
  158. data/templates/SLES-11-SP1-DVD-x86_64-GM/postinstall.sh +3 -0
  159. data/templates/gentoo-latest-i386-experimental/definition.rb +20 -4
  160. data/templates/gentoo-latest-x86_64-experimental/definition.rb +23 -12
  161. data/templates/scientificlinux-6.1-i386-netboot/definition.rb +1 -2
  162. data/templates/scientificlinux-6.3-i386-netboot/base.sh +1 -0
  163. data/templates/scientificlinux-6.3-i386-netboot/chef.sh +1 -0
  164. data/templates/scientificlinux-6.3-i386-netboot/cleanup.sh +4 -0
  165. data/templates/scientificlinux-6.3-i386-netboot/definition.rb +37 -0
  166. data/templates/scientificlinux-6.3-i386-netboot/ks.cfg +53 -0
  167. data/templates/{CentOS-6.0-i386-netboot → scientificlinux-6.3-i386-netboot}/postinstall.sh +2 -2
  168. data/templates/scientificlinux-6.3-i386-netboot/puppet.sh +1 -0
  169. data/templates/scientificlinux-6.3-i386-netboot/ruby.sh +1 -0
  170. data/templates/scientificlinux-6.3-i386-netboot/vagrant.sh +8 -0
  171. data/templates/scientificlinux-6.3-i386-netboot/virtualbox.sh +8 -0
  172. data/templates/scientificlinux-6.3-x86_64-netboot/base.sh +1 -0
  173. data/templates/scientificlinux-6.3-x86_64-netboot/chef.sh +1 -0
  174. data/templates/scientificlinux-6.3-x86_64-netboot/cleanup.sh +4 -0
  175. data/templates/scientificlinux-6.3-x86_64-netboot/definition.rb +37 -0
  176. data/templates/scientificlinux-6.3-x86_64-netboot/ks.cfg +53 -0
  177. data/templates/{CentOS-6.0-x86_64-netboot → scientificlinux-6.3-x86_64-netboot}/postinstall.sh +2 -2
  178. data/templates/scientificlinux-6.3-x86_64-netboot/puppet.sh +1 -0
  179. data/templates/scientificlinux-6.3-x86_64-netboot/ruby.sh +1 -0
  180. data/templates/scientificlinux-6.3-x86_64-netboot/rvm-ruby.sh +9 -0
  181. data/templates/scientificlinux-6.3-x86_64-netboot/vagrant.sh +8 -0
  182. data/templates/scientificlinux-6.3-x86_64-netboot/virtualbox.sh +8 -0
  183. data/templates/ubuntu-10.04.3-server-i386/postinstall.sh +5 -5
  184. data/templates/{ubuntu-12.04-server-amd64-packages → ubuntu-12.04.1-server-amd64-packages}/definition.rb +3 -3
  185. data/templates/{ubuntu-12.04-server-amd64-packages → ubuntu-12.04.1-server-amd64-packages}/postinstall.sh +0 -0
  186. data/templates/{ubuntu-12.04-server-amd64-packages → ubuntu-12.04.1-server-amd64-packages}/preseed.cfg +0 -0
  187. data/templates/{ubuntu-12.04-server-amd64 → ubuntu-12.04.1-server-amd64}/definition.rb +3 -3
  188. data/templates/{ubuntu-12.04-server-amd64 → ubuntu-12.04.1-server-amd64}/postinstall.sh +0 -0
  189. data/templates/{ubuntu-12.04-server-amd64 → ubuntu-12.04.1-server-amd64}/preseed.cfg +0 -0
  190. data/templates/{ubuntu-12.04-server-i386-packages → ubuntu-12.04.1-server-i386-packages}/definition.rb +3 -3
  191. data/templates/{ubuntu-12.04-server-i386-packages → ubuntu-12.04.1-server-i386-packages}/postinstall.sh +0 -0
  192. data/templates/{ubuntu-12.04-server-i386-packages → ubuntu-12.04.1-server-i386-packages}/preseed.cfg +0 -0
  193. data/templates/{ubuntu-12.04-server-i386 → ubuntu-12.04.1-server-i386}/definition.rb +3 -3
  194. data/templates/{ubuntu-12.04-server-i386 → ubuntu-12.04.1-server-i386}/postinstall.sh +0 -0
  195. data/templates/{ubuntu-12.04-server-i386 → ubuntu-12.04.1-server-i386}/preseed.cfg +0 -0
  196. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/Autounattend.xml +0 -0
  197. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/README.md +0 -0
  198. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/cygwin-setup.exe +0 -0
  199. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/definition.rb +3 -3
  200. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/install-cygwin-sshd.bat +0 -0
  201. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/install-winrm.bat +0 -0
  202. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/oracle-cert.cer +0 -0
  203. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/postinstall.sh +0 -0
  204. data/templates/{windows-8-preview-dev-amd64 → windows-8-preview-amd64}/winrm.rb +0 -0
  205. data/validation/veewee.feature +6 -6
  206. metadata +306 -157
  207. data/templates/CentOS-6.0-i386/postinstall.sh +0 -48
  208. data/templates/CentOS-6.0-x86_64-minimal/postinstall.sh +0 -58
  209. data/templates/CentOS-6.0-x86_64/postinstall.sh +0 -48
  210. data/templates/CentOS-6.1-x86_64-netboot/postinstall.sh +0 -48
  211. data/templates/CentOS-6.2-x86_64-netboot/postinstall.sh +0 -48
@@ -0,0 +1,2 @@
1
+ # Installing Puppet
2
+ /usr/bin/gem install puppet --no-ri --no-rdoc
@@ -0,0 +1,11 @@
1
+ #Installing ruby
2
+ apt-get -y install ruby ruby1.8-dev libopenssl-ruby1.8 rdoc ri irb make g++ libshadow-ruby1.8
3
+
4
+ # Install RubyGems 1.7.2
5
+ wget http://production.cf.rubygems.org/rubygems/rubygems-1.7.2.tgz
6
+ tar xzf rubygems-1.7.2.tgz
7
+ cd rubygems-1.7.2
8
+ /usr/bin/ruby setup.rb
9
+ cd ..
10
+ rm -rf rubygems-1.7.2*
11
+ ln -sfv /usr/bin/gem1.8 /usr/bin/gem
@@ -0,0 +1,14 @@
1
+ #Setting up sudo
2
+ cp /etc/sudoers /etc/sudoers.orig
3
+ sed -i -e 's/vagrant ALL=(ALL) ALL/vagrant ALL=NOPASSWD:ALL/g' /etc/sudoers
4
+
5
+ #Installing vagrant keys
6
+ mkdir /home/vagrant/.ssh
7
+ chmod 700 /home/vagrant/.ssh
8
+ cd /home/vagrant/.ssh
9
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
10
+ chmod 600 /home/vagrant/.ssh/authorized_keys
11
+ chown -R vagrant /home/vagrant/.ssh
12
+
13
+ # Install NFS client
14
+ apt-get -y install nfs-common
@@ -0,0 +1,15 @@
1
+ #Installing the virtualbox guest additions
2
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
3
+
4
+ if test -f $VBOX_VERSION
5
+ cd /tmp
6
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
7
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
8
+ yes|sh /mnt/VBoxLinuxAdditions.run
9
+ umount /mnt
10
+
11
+ apt-get -y remove linux-headers-$(uname -r) build-essential
12
+ apt-get -y autoremove
13
+
14
+ rm VBoxGuestAdditions_$VBOX_VERSION.iso
15
+ fi
@@ -66,7 +66,7 @@ d-i netcfg/wireless_wep string
66
66
  # If you select ftp, the mirror/country string does not need to be set.
67
67
  #d-i mirror/protocol string ftp
68
68
  d-i mirror/country string manual
69
- d-i mirror/http/hostname string http.us.debian.org
69
+ d-i mirror/http/hostname string archive.debian.org
70
70
  d-i mirror/http/directory string /debian
71
71
  d-i mirror/http/proxy string
72
72
 
@@ -206,7 +206,7 @@ d-i passwd/user-default-groups string audio cdrom video admin
206
206
  # Select which update services to use; define the mirrors to be used.
207
207
  # Values shown below are the normal defaults.
208
208
  #d-i apt-setup/services-select multiselect security, volatile
209
- #d-i apt-setup/security_host string security.debian.org
209
+ d-i apt-setup/security_host string archive.debian.org/debian-security
210
210
  #d-i apt-setup/volatile_host string volatile.debian.org
211
211
 
212
212
 
@@ -66,7 +66,7 @@ d-i netcfg/wireless_wep string
66
66
  # If you select ftp, the mirror/country string does not need to be set.
67
67
  #d-i mirror/protocol string ftp
68
68
  d-i mirror/country string manual
69
- d-i mirror/http/hostname string http.us.debian.org
69
+ d-i mirror/http/hostname string archive.debian.org
70
70
  d-i mirror/http/directory string /debian
71
71
  d-i mirror/http/proxy string
72
72
 
@@ -206,7 +206,7 @@ d-i passwd/user-default-groups string audio cdrom video admin
206
206
  # Select which update services to use; define the mirrors to be used.
207
207
  # Values shown below are the normal defaults.
208
208
  #d-i apt-setup/services-select multiselect security, volatile
209
- #d-i apt-setup/security_host string security.debian.org
209
+ d-i apt-setup/security_host string archive.debian.org/debian-security
210
210
  #d-i apt-setup/volatile_host string volatile.debian.org
211
211
 
212
212
 
@@ -4,7 +4,7 @@ Veewee::Definition.declare({
4
4
  :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
5
5
  :os_type_id => 'Debian_64',
6
6
  :iso_file => "debian-6.0.4-amd64-netinst.iso",
7
- :iso_src => "http://cdimage.debian.org/debian-cd/6.0.4/amd64/iso-cd/debian-6.0.4-amd64-netinst.iso",
7
+ :iso_src => "http://cdimage.debian.org/cdimage/archive/6.0.4/amd64/iso-cd/debian-6.0.4-amd64-netinst.iso",
8
8
  :iso_md5 => "4ea4c72e4c9eb6af8f2fa59c3d2b5248",
9
9
  :iso_download_timeout => "1000",
10
10
  :boot_wait => "10", :boot_cmd_sequence => [
@@ -2,8 +2,12 @@
2
2
 
3
3
  date > /etc/vagrant_box_build_time
4
4
 
5
+ # Add groups puppet and chef
6
+ groupadd puppet
7
+ groupadd chef
8
+
5
9
  # Create the user vagrant with password vagrant
6
- useradd -G admin -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
10
+ useradd -G sudo -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
7
11
 
8
12
  # Install vagrant keys
9
13
  mkdir -pm 700 /home/vagrant/.ssh
@@ -6,7 +6,7 @@ Veewee::Definition.declare({
6
6
  :disk_size => '10140', :disk_format => 'VDI', :hostiocache => 'off',
7
7
  :os_type_id => 'Debian',
8
8
  :iso_file => "debian-6.04-i386-netinst.iso",
9
- :iso_src => "http://cdimage.debian.org/debian-cd/6.0.4/i386/iso-cd/debian-6.0.4-i386-netinst.iso",
9
+ :iso_src => "http://cdimage.debian.org/cdimage/archive/6.0.4/i386/iso-cd/debian-6.0.4-i386-netinst.iso",
10
10
  :iso_md5 => "38bf1278cc5c98c5fa09dd0973ebc9f5",
11
11
  :iso_download_timeout => "1000",
12
12
  :boot_wait => "10", :boot_cmd_sequence => [
@@ -2,8 +2,12 @@
2
2
 
3
3
  date > /etc/vagrant_box_build_time
4
4
 
5
+ # Add groups puppet and chef
6
+ groupadd puppet
7
+ groupadd chef
8
+
5
9
  # Create the user vagrant with password vagrant
6
- useradd -G admin -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
10
+ useradd -G sudo -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
7
11
 
8
12
  # Install vagrant keys
9
13
  mkdir -pm 700 /home/vagrant/.ssh
@@ -2,8 +2,12 @@
2
2
 
3
3
  date > /etc/vagrant_box_build_time
4
4
 
5
+ # Add groups puppet and chef
6
+ groupadd puppet
7
+ groupadd chef
8
+
5
9
  # Create the user vagrant with password vagrant
6
- useradd -G admin -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
10
+ useradd -G sudo -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
7
11
 
8
12
  # Install vagrant keys
9
13
  mkdir -pm 700 /home/vagrant/.ssh
@@ -2,8 +2,12 @@
2
2
 
3
3
  date > /etc/vagrant_box_build_time
4
4
 
5
+ # Add groups puppet and chef
6
+ groupadd puppet
7
+ groupadd chef
8
+
5
9
  # Create the user vagrant with password vagrant
6
- useradd -G admin -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
10
+ useradd -G sudo -p $(perl -e'print crypt("vagrant", "vagrant")') -m -s /bin/bash -N vagrant
7
11
 
8
12
  # Install vagrant keys
9
13
  mkdir -pm 700 /home/vagrant/.ssh
@@ -4,6 +4,9 @@
4
4
 
5
5
  date > /etc/vagrant_box_build_time
6
6
 
7
+ # remove zypper locks on removed packages to avoid later dependency problems
8
+ zypper --non-interactive rl \*
9
+
7
10
  # install vagrant key
8
11
  echo -e "\ninstall vagrant key ..."
9
12
  mkdir -m 0700 /home/vagrant/.ssh
@@ -4,6 +4,9 @@
4
4
 
5
5
  date > /etc/vagrant_box_build_time
6
6
 
7
+ # remove zypper locks on removed packages to avoid later dependency problems
8
+ zypper --non-interactive rl \*
9
+
7
10
  # install vagrant key
8
11
  echo -e "\ninstall vagrant key ..."
9
12
  mkdir -m 0700 /home/vagrant/.ssh
@@ -1,12 +1,28 @@
1
+ require 'net/http'
2
+
3
+ # Name spacing variables as they are executed inside veewee code
4
+ template_uri = 'http://distfiles.gentoo.org/releases/x86/autobuilds/latest-install-x86-minimal.txt'
5
+ template_build = Net::HTTP.get_response( URI.parse( template_uri ) ).body
6
+ template_build = /^(([^#].*)\/(.*))/.match( template_build )
7
+ template_uri = "http://distfiles.gentoo.org/releases/x86/autobuilds/#{template_build[1]}.DIGESTS"
8
+ template_digest = Net::HTTP.get_response( URI.parse( template_uri ) ).body
9
+ template_digest = Regexp.new( '^([a-z0-9]{32})\s+ ' + Regexp.escape( template_build[3] ) + '$').match( template_digest )[1]
10
+
11
+
1
12
  Veewee::Definition.declare( {
2
13
  :cpu_count => '1', :memory_size=> '768',
3
14
  :disk_size => '10140', :disk_format => 'VDI',:hostiocache => 'off',
4
15
  :os_type_id => 'Gentoo',
5
- :iso_file => "install-x86-minimal-20110726.iso",
6
- :iso_src => "http://ftp.halifax.rwth-aachen.de/gentoo/releases/x86/autobuilds/20110726/install-x86-minimal-20110726.iso",
7
- :iso_md5 => "29fc74988e7f86417395e376afc1af47",
16
+ :iso_file => template_build[3],
17
+ :iso_src => "http://distfiles.gentoo.org/releases/x86/autobuilds/#{template_build[1]}",
18
+ :iso_md5 => template_digest,
8
19
  :iso_download_timeout => "1000",
9
- :boot_wait => "120",:boot_cmd_sequence => [
20
+ :boot_wait => "10",:boot_cmd_sequence => [
21
+ '<Wait>'*2,
22
+ 'gentoo-nofb<Enter>',
23
+ '<Wait>'*10,
24
+ '<Enter>',
25
+ '<Wait>'*10,
10
26
  'net-setup eth0<Enter>',
11
27
  '<Wait><Enter>',
12
28
  '2<Enter>',
@@ -1,12 +1,23 @@
1
- Veewee::Session.declare( {
2
- :cpu_count => '1', :memory_size=> '1024',
1
+ require 'net/http'
2
+
3
+ # Name spacing variables as they are executed inside veewee code
4
+ template_uri = 'http://distfiles.gentoo.org/releases/x86/autobuilds/latest-install-amd64-minimal.txt'
5
+ template_build = Net::HTTP.get_response( URI.parse( template_uri ) ).body
6
+ template_build = /^(([^#].*)\/(.*))/.match( template_build )
7
+ template_uri = "http://distfiles.gentoo.org/releases/x86/autobuilds/#{template_build[1]}.DIGESTS"
8
+ template_digest = Net::HTTP.get_response( URI.parse( template_uri ) ).body
9
+ template_digest = Regexp.new( '^([a-z0-9]{32})\s+ ' + Regexp.escape( template_build[3] ) + '$').match( template_digest )[1]
10
+
11
+
12
+ Veewee::Definition.declare( {
13
+ :cpu_count => '1', :memory_size=> '768',
3
14
  :disk_size => '10140', :disk_format => 'VDI',:hostiocache => 'off',
4
- :os_type_id => 'Gentoo',
5
- :iso_file => "install-amd64-minimal-20111208.iso",
6
- :iso_src => "http://distfiles.gentoo.org/releases/amd64/autobuilds/current-iso/install-amd64-minimal-20111208.iso",
7
- :iso_md5 => "8c4e10aaaa7cce35503c0d23b4e0a42a",
15
+ :os_type_id => 'Gentoo_64',
16
+ :iso_file => template_build[3],
17
+ :iso_src => "http://distfiles.gentoo.org/releases/x86/autobuilds/#{template_build[1]}",
18
+ :iso_md5 => template_digest,
8
19
  :iso_download_timeout => "1000",
9
- :boot_wait => "1",:boot_cmd_sequence => [
20
+ :boot_wait => "10",:boot_cmd_sequence => [
10
21
  '<Wait>'*2,
11
22
  'gentoo-nofb<Enter>',
12
23
  '<Wait>'*10,
@@ -16,12 +27,12 @@ Veewee::Session.declare( {
16
27
  '<Wait><Enter>',
17
28
  '2<Enter>',
18
29
  '1<Enter>',
19
- '<Wait><Wait>ifconfig -a <Enter>',
20
- #'sleep 5 ;curl http://%IP%:%PORT%/stages.sh -o stages.sh &&',
21
- #'bash stages.sh &<Enter>',
30
+ '<Wait><Wait>ifconfig -a <Enter>',
31
+ #'sleep 5 ;curl http://%IP%:%PORT%/stages.sh -o stages.sh &&',
32
+ #'bash stages.sh &<Enter>',
22
33
  'passwd<Enter><Wait><Wait>',
23
- 'vagrant<Enter><Wait>',
24
- 'vagrant<Enter><Wait>',
34
+ 'vagrant<Enter><Wait>',
35
+ 'vagrant<Enter><Wait>',
25
36
  '/etc/init.d/sshd start<Enter>'
26
37
  ],
27
38
  :kickstart_port => "7122", :kickstart_timeout => "10000",:kickstart_file => "",
@@ -4,8 +4,7 @@ Veewee::Session.declare({
4
4
  :disk_size => '10140',
5
5
  :disk_format => 'VDI',
6
6
  :hostiocache => 'off',
7
- :ioapic => 'on',
8
- :pae => 'on',
7
+ :virtualbox => { :vm_options => [ 'pae' => 'on', 'ioapic' => 'on'] },
9
8
  :os_type_id => 'RedHat_64',
10
9
  :iso_file => "SL-61-i386-2011-07-27-boot.iso",
11
10
  :iso_src => "http://mirrors.200p-sf.sonic.net/scientific/6.1/i386/iso/SL-61-i386-2011-07-27-boot.iso",
@@ -0,0 +1 @@
1
+ sed -i "s/^.*requiretty/#Defaults requiretty/" /etc/sudoers
@@ -0,0 +1 @@
1
+ gem install --no-ri --no-rdoc chef
@@ -0,0 +1,4 @@
1
+ yum -y erase wireless-tools gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
2
+ yum -y clean all
3
+
4
+ rm -rf VBoxGuestAdditions_*.iso
@@ -0,0 +1,37 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1',
3
+ :memory_size=> '512',
4
+ :disk_size => '10140',
5
+ :disk_format => 'VDI',
6
+ :hostiocache => 'off',
7
+ :ioapic => 'on',
8
+ :pae => 'on',
9
+ :os_type_id => 'RedHat',
10
+ :iso_file => "SL-63-i386-2012-08-02-boot.iso",
11
+ :iso_src => "http://ftp.heanet.ie/pub/rsync.scientificlinux.org/6.3/i386/iso/SL-63-i386-2012-08-02-boot.iso",
12
+ :iso_md5 => "c85099bd8d4627a6ebb039faf66563ad",
13
+ :iso_download_timeout => 1000,
14
+ :boot_wait => "15",
15
+ :boot_cmd_sequence => [ '<Tab> text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
16
+ :kickstart_port => "7122",
17
+ :kickstart_timeout => 10000,
18
+ :kickstart_file => "ks.cfg",
19
+ :ssh_login_timeout => "10000",
20
+ :ssh_user => "vagrant",
21
+ :ssh_password => "vagrant",
22
+ :ssh_key => "",
23
+ :ssh_host_port => "7222",
24
+ :ssh_guest_port => "22",
25
+ :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
26
+ :shutdown_cmd => "/sbin/halt -h -p",
27
+ :postinstall_files => [
28
+ "base.sh",
29
+ "puppet.sh",
30
+ "chef.sh",
31
+ "vagrant.sh",
32
+ "virtualbox.sh",
33
+ "ruby.sh",
34
+ "cleanup.sh"
35
+ ],
36
+ :postinstall_timeout => 10000
37
+ })
@@ -0,0 +1,53 @@
1
+ install
2
+ url --url=http://ftp.heanet.ie/pub/rsync.scientificlinux.org/6.3/i386/os
3
+ lang en_US.UTF-8
4
+ keyboard us
5
+ network --bootproto dhcp
6
+ rootpw --iscrypted $1$damlkd,f$UC/u5pUts5QiU3ow.CSso/
7
+ firewall --enabled --trust eth0 --ssh
8
+ authconfig --enableshadow --enablemd5
9
+ selinux --disabled
10
+ timezone UTC
11
+ bootloader --location=mbr
12
+
13
+ text
14
+ skipx
15
+ zerombr
16
+
17
+ clearpart --all --initlabel
18
+ autopart
19
+
20
+ auth --useshadow --enablemd5
21
+ firstboot --disabled
22
+ reboot
23
+
24
+ repo --name=epel --baseurl=http://download.fedoraproject.org/pub/epel/6/i386/ --includepkgs='ruby-augeas,ruby-shadow'
25
+ repo --name=puppetlabs --baseurl=http://yum.puppetlabs.com/el/6/products/i386/ --includepkgs='puppet,facter'
26
+ repo --name=puppetlabs-dependencies --baseurl=http://yum.puppetlabs.com/el/6/dependencies/i386/
27
+
28
+ %packages
29
+ @ core
30
+ ruby
31
+ ruby-devel
32
+ rubygems
33
+ kernel-devel
34
+ gcc
35
+ gcc-c++
36
+ bzip2
37
+ make
38
+ zlib-devel
39
+ openssl-devel
40
+ readline-devel
41
+ sqlite-devel
42
+ puppet
43
+ facter
44
+
45
+ -ipw2100-firmware
46
+ -ipw2200-firmware
47
+ -ivtv-firmware
48
+
49
+ %post
50
+ /usr/sbin/groupadd vagrant
51
+ /usr/sbin/useradd vagrant -g vagrant -G wheel
52
+ echo "vagrant"|passwd --stdin vagrant
53
+ echo "vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
@@ -2,7 +2,7 @@
2
2
 
3
3
  date > /etc/vagrant_box_build_time
4
4
 
5
- yum -y erase gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
5
+ yum -y erase wireless-tools gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
6
6
  yum -y clean all
7
7
 
8
8
  gem install --no-ri --no-rdoc chef
@@ -11,7 +11,7 @@ gem install --no-ri --no-rdoc chef
11
11
  mkdir /home/vagrant/.ssh
12
12
  chmod 700 /home/vagrant/.ssh
13
13
  cd /home/vagrant/.ssh
14
- wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
14
+ wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
15
15
  chown -R vagrant /home/vagrant/.ssh
16
16
 
17
17
  # Installing the virtualbox guest additions
@@ -0,0 +1 @@
1
+ gem install --no-ri --no-rdoc puppet
@@ -0,0 +1 @@
1
+ yum -y install ruby ruby-devel rubygems
@@ -0,0 +1,8 @@
1
+ date > /etc/vagrant_box_build_time
2
+
3
+ # Installing vagrant keys
4
+ mkdir /home/vagrant/.ssh
5
+ chmod 700 /home/vagrant/.ssh
6
+ cd /home/vagrant/.ssh
7
+ wget --no-check-certificate 'http://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' -O authorized_keys
8
+ chown -R vagrant /home/vagrant/.ssh
@@ -0,0 +1,8 @@
1
+ # Installing the virtualbox guest additions
2
+ VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
3
+ cd /tmp
4
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
5
+ mount -o loop VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
6
+ sh /mnt/VBoxLinuxAdditions.run
7
+ umount /mnt
8
+ rm -rf VBoxGuestAdditions_$VBOX_VERSION.iso
@@ -0,0 +1 @@
1
+ sed -i "s/^.*requiretty/#Defaults requiretty/" /etc/sudoers
@@ -0,0 +1 @@
1
+ gem install --no-ri --no-rdoc chef
@@ -0,0 +1,4 @@
1
+ yum -y erase wireless-tools gtk2 libX11 hicolor-icon-theme avahi freetype bitstream-vera-fonts
2
+ yum -y clean all
3
+
4
+ rm -rf VBoxGuestAdditions_*.iso
@@ -0,0 +1,37 @@
1
+ Veewee::Session.declare({
2
+ :cpu_count => '1',
3
+ :memory_size=> '512',
4
+ :disk_size => '10140',
5
+ :disk_format => 'VDI',
6
+ :hostiocache => 'off',
7
+ :ioapic => 'on',
8
+ :pae => 'on',
9
+ :os_type_id => 'RedHat_64',
10
+ :iso_file => "SL-63-x86_64-2012-08-02-boot.iso",
11
+ :iso_src => "http://ftp.heanet.ie/pub/rsync.scientificlinux.org/6.3/x86_64/iso/SL-63-x86_64-2012-08-02-boot.iso",
12
+ :iso_md5 => "a0356a9d19cb462edb4f95790d435b8d",
13
+ :iso_download_timeout => 1000,
14
+ :boot_wait => "15",
15
+ :boot_cmd_sequence => [ '<Tab> text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
16
+ :kickstart_port => "7122",
17
+ :kickstart_timeout => 10000,
18
+ :kickstart_file => "ks.cfg",
19
+ :ssh_login_timeout => "10000",
20
+ :ssh_user => "vagrant",
21
+ :ssh_password => "vagrant",
22
+ :ssh_key => "",
23
+ :ssh_host_port => "7222",
24
+ :ssh_guest_port => "22",
25
+ :sudo_cmd => "echo '%p'|sudo -S bash '%f'",
26
+ :shutdown_cmd => "/sbin/halt -h -p",
27
+ :postinstall_files => [
28
+ "base.sh",
29
+ "puppet.sh",
30
+ "chef.sh",
31
+ "vagrant.sh",
32
+ "virtualbox.sh",
33
+ "ruby.sh",
34
+ "cleanup.sh"
35
+ ],
36
+ :postinstall_timeout => 10000
37
+ })