veewee 0.3.7 → 0.3.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (966) hide show
  1. data/.gitignore +5 -0
  2. data/.rvmrc +2 -1
  3. data/.travis.yml +8 -0
  4. data/CONTRIBUTE.md +51 -0
  5. data/Gemfile +11 -2
  6. data/README.md +88 -22
  7. data/Rakefile +11 -7
  8. data/bin/veewee +1 -0
  9. data/doc/TODO.md +76 -0
  10. data/doc/basics.md +200 -0
  11. data/doc/build_hooks.md +69 -0
  12. data/doc/changes.md +20 -0
  13. data/doc/commands.md +42 -0
  14. data/doc/customize.md +145 -0
  15. data/doc/fusion.md +5 -1
  16. data/doc/installation.md +90 -9
  17. data/doc/kvm.md +52 -42
  18. data/doc/parallels.md +3 -0
  19. data/doc/providers.md +6 -21
  20. data/doc/requirements.md +69 -5
  21. data/doc/vagrant.md +26 -93
  22. data/doc/vbox.md +78 -1
  23. data/doc/veeweefile.md +25 -0
  24. data/lib/fission.old/cli.rb +76 -0
  25. data/lib/fission.old/command.rb +15 -0
  26. data/lib/fission.old/command/clone.rb +68 -0
  27. data/lib/fission.old/command/delete.rb +71 -0
  28. data/lib/fission.old/command/snapshot_create.rb +52 -0
  29. data/lib/fission.old/command/snapshot_list.rb +45 -0
  30. data/lib/fission.old/command/snapshot_revert.rb +54 -0
  31. data/lib/fission.old/command/start.rb +69 -0
  32. data/lib/fission.old/command/status.rb +31 -0
  33. data/lib/fission.old/command/stop.rb +49 -0
  34. data/lib/fission.old/command/suspend.rb +67 -0
  35. data/lib/fission.old/config.rb +34 -0
  36. data/lib/fission.old/core_ext/class.rb +5 -0
  37. data/lib/fission.old/core_ext/file.rb +7 -0
  38. data/lib/fission.old/core_ext/object.rb +112 -0
  39. data/lib/fission.old/error.rb +10 -0
  40. data/lib/fission.old/fusion.rb +17 -0
  41. data/lib/fission.old/leasesfile.rb +74 -0
  42. data/lib/fission.old/metadata.rb +39 -0
  43. data/lib/fission.old/response.rb +16 -0
  44. data/lib/fission.old/ui.rb +22 -0
  45. data/lib/fission.old/version.rb +3 -0
  46. data/lib/fission.old/vm.rb +370 -0
  47. data/lib/veewee/command/fusion.rb +16 -142
  48. data/lib/veewee/command/group_base.rb +111 -7
  49. data/lib/veewee/command/kvm.rb +19 -104
  50. data/lib/veewee/command/parallels.rb +15 -105
  51. data/lib/veewee/command/vagrant/build.rb +2 -2
  52. data/lib/veewee/command/vagrant/export.rb +0 -2
  53. data/lib/veewee/command/vbox.rb +21 -134
  54. data/lib/veewee/config.rb +2 -3
  55. data/lib/veewee/config/ostypes.yml +21 -1
  56. data/lib/veewee/definition.rb +42 -11
  57. data/lib/veewee/definitions.rb +27 -6
  58. data/lib/veewee/environment.rb +34 -25
  59. data/lib/veewee/error.rb +1 -1
  60. data/lib/veewee/provider/core/box/build.rb +71 -7
  61. data/lib/veewee/provider/core/box/exec.rb +1 -1
  62. data/lib/veewee/provider/core/box/floppy.rb +1 -1
  63. data/lib/veewee/provider/core/box/ssh.rb +2 -2
  64. data/lib/veewee/provider/core/box/validate_tags.rb +137 -30
  65. data/lib/veewee/provider/core/box/vnc.rb +1 -1
  66. data/lib/veewee/provider/core/box/wincp.rb +8 -8
  67. data/lib/veewee/provider/core/helper/iso.rb +41 -15
  68. data/lib/veewee/provider/core/helper/scancode.rb +46 -43
  69. data/lib/veewee/provider/core/helper/shell.rb +3 -2
  70. data/lib/veewee/provider/core/helper/ssh.rb +21 -10
  71. data/lib/veewee/provider/core/helper/tcp.rb +19 -6
  72. data/lib/veewee/provider/core/helper/web.rb +1 -1
  73. data/lib/veewee/provider/core/helper/winrm.rb +3 -0
  74. data/lib/veewee/provider/core/provider.rb +1 -1
  75. data/lib/veewee/provider/kvm/box.rb +7 -0
  76. data/lib/veewee/provider/kvm/box/create.rb +122 -71
  77. data/lib/veewee/provider/kvm/box/destroy.rb +5 -6
  78. data/lib/veewee/provider/kvm/box/export_vagrant.rb +143 -0
  79. data/lib/veewee/provider/kvm/box/helper/status.rb +6 -2
  80. data/lib/veewee/provider/kvm/provider.rb +26 -21
  81. data/lib/veewee/provider/kvm/templates/Vagrantfile +45 -0
  82. data/lib/veewee/provider/parallels/box.rb +1 -0
  83. data/lib/veewee/provider/parallels/box/export.rb +184 -0
  84. data/lib/veewee/provider/parallels/box/helper/buildinfo.rb +7 -5
  85. data/lib/veewee/provider/parallels/box/helper/console_type.rb +12 -6
  86. data/lib/veewee/provider/virtualbox/box.rb +19 -5
  87. data/lib/veewee/provider/virtualbox/box/create.rb +1 -1
  88. data/lib/veewee/provider/virtualbox/box/export_vagrant.rb +90 -8
  89. data/lib/veewee/provider/virtualbox/box/helper/console_type.rb +3 -1
  90. data/lib/veewee/provider/virtualbox/box/helper/create.rb +48 -23
  91. data/lib/veewee/provider/virtualbox/box/helper/forwarding.rb +5 -1
  92. data/lib/veewee/provider/virtualbox/box/helper/version.rb +4 -1
  93. data/lib/veewee/provider/virtualbox/box/up.rb +6 -6
  94. data/lib/veewee/provider/virtualbox/provider.rb +3 -1
  95. data/lib/veewee/provider/vmfusion/box.rb +1 -1
  96. data/lib/veewee/provider/vmfusion/box/export.rb +125 -0
  97. data/lib/veewee/provider/vmfusion/box/helper/buildinfo.rb +6 -2
  98. data/lib/veewee/provider/vmfusion/box/helper/ip.rb +6 -1
  99. data/lib/veewee/provider/vmfusion/box/poweroff.rb +1 -1
  100. data/lib/veewee/provider/vmfusion/box/ssh.rb +1 -1
  101. data/lib/veewee/provider/vmfusion/box/template.rb +10 -3
  102. data/lib/veewee/provider/vmfusion/box/template.vmx.erb +19 -5
  103. data/lib/veewee/templates/Vagrantfile.erb +11 -0
  104. data/lib/veewee/version.rb +1 -1
  105. data/templates/.ubuntu/base.sh +20 -0
  106. data/templates/.ubuntu/chef.sh +49 -0
  107. data/templates/.ubuntu/cleanup.sh +25 -0
  108. data/templates/.ubuntu/puppet.sh +15 -0
  109. data/templates/.ubuntu/ruby.sh +7 -0
  110. data/templates/.ubuntu/vagrant.sh +27 -0
  111. data/templates/.ubuntu/virtualbox.sh +15 -0
  112. data/templates/.ubuntu/zerodisk.sh +11 -0
  113. data/templates/CentOS-4.8-i386/ks.cfg +3 -3
  114. data/templates/CentOS-4.8-i386/postinstall.sh +3 -0
  115. data/templates/CentOS-5.5-i386-netboot/definition.rb +1 -1
  116. data/templates/CentOS-5.5-i386-netboot/ks.cfg +3 -3
  117. data/templates/CentOS-5.5-i386-netboot/postinstall.sh +3 -0
  118. data/templates/CentOS-5.5-x86_64-netboot/definition.rb +1 -1
  119. data/templates/CentOS-5.5-x86_64-netboot/ks.cfg +3 -3
  120. data/templates/CentOS-5.5-x86_64-netboot/postinstall.sh +4 -0
  121. data/templates/CentOS-5.6-i386-netboot/definition.rb +1 -1
  122. data/templates/CentOS-5.6-i386-netboot/ks.cfg +3 -3
  123. data/templates/CentOS-5.6-i386/ks.cfg +3 -3
  124. data/templates/CentOS-5.6-i386/postinstall.sh +3 -0
  125. data/templates/CentOS-5.6-x86_64-netboot-packages/definition.rb +1 -1
  126. data/templates/CentOS-5.6-x86_64-netboot-packages/ks.cfg +3 -3
  127. data/templates/CentOS-5.6-x86_64-netboot-packages/postinstall.sh +3 -0
  128. data/templates/CentOS-5.6-x86_64-netboot/definition.rb +1 -1
  129. data/templates/CentOS-5.6-x86_64-netboot/ks.cfg +3 -3
  130. data/templates/CentOS-5.6-x86_64-netboot/postinstall.sh +4 -0
  131. data/templates/CentOS-5.7-i386-netboot/definition.rb +1 -1
  132. data/templates/CentOS-5.7-i386-netboot/ks.cfg +3 -3
  133. data/templates/CentOS-5.7-i386-netboot/postinstall.sh +3 -0
  134. data/templates/CentOS-5.7-x86_64-netboot/definition.rb +1 -1
  135. data/templates/CentOS-5.7-x86_64-netboot/ks.cfg +3 -3
  136. data/templates/CentOS-5.7-x86_64-netboot/postinstall.sh +3 -0
  137. data/templates/CentOS-5.8-i386-netboot/definition.rb +1 -1
  138. data/templates/CentOS-5.8-i386-netboot/ks.cfg +3 -3
  139. data/templates/CentOS-5.8-i386-netboot/postinstall.sh +3 -0
  140. data/templates/CentOS-5.8-i386/definition.rb +1 -1
  141. data/templates/CentOS-5.8-i386/ks.cfg +3 -3
  142. data/templates/CentOS-5.8-i386/postinstall.sh +3 -0
  143. data/templates/CentOS-5.8-x86_64-netboot/definition.rb +1 -1
  144. data/templates/CentOS-5.8-x86_64-netboot/ks.cfg +5 -5
  145. data/templates/CentOS-5.8-x86_64-netboot/postinstall.sh +3 -0
  146. data/templates/CentOS-5.8-x86_64-reallyminimal/README.md +3 -0
  147. data/templates/CentOS-5.8-x86_64-reallyminimal/definition.rb +33 -0
  148. data/templates/CentOS-5.8-x86_64-reallyminimal/ks.cfg +102 -0
  149. data/templates/CentOS-5.8-x86_64-reallyminimal/postinstall.sh +132 -0
  150. data/templates/CentOS-5.8-x86_64/definition.rb +1 -1
  151. data/templates/CentOS-5.8-x86_64/ks.cfg +3 -3
  152. data/templates/CentOS-5.8-x86_64/postinstall.sh +3 -0
  153. data/templates/CentOS-5.9-i386-netboot/base.sh +9 -0
  154. data/templates/CentOS-5.9-i386-netboot/cfengine.sh +69 -0
  155. data/templates/CentOS-5.9-i386-netboot/chef.sh +3 -0
  156. data/templates/CentOS-5.9-i386-netboot/cleanup.sh +7 -0
  157. data/templates/CentOS-5.9-i386-netboot/definition.rb +43 -0
  158. data/templates/CentOS-5.9-i386-netboot/ks.cfg +47 -0
  159. data/templates/CentOS-5.9-i386-netboot/puppet.sh +18 -0
  160. data/templates/CentOS-5.9-i386-netboot/ruby.sh +12 -0
  161. data/templates/CentOS-5.9-i386-netboot/vagrant.sh +18 -0
  162. data/templates/CentOS-5.9-i386-netboot/virtualbox.sh +8 -0
  163. data/templates/CentOS-5.9-i386-netboot/vmfusion.sh +7 -0
  164. data/templates/{Debian-7.0-b4-amd64-netboot → CentOS-5.9-i386-netboot}/zerodisk.sh +0 -0
  165. data/templates/CentOS-5.9-i386/base.sh +9 -0
  166. data/templates/CentOS-5.9-i386/cfengine.sh +69 -0
  167. data/templates/CentOS-5.9-i386/chef.sh +3 -0
  168. data/templates/CentOS-5.9-i386/cleanup.sh +7 -0
  169. data/templates/CentOS-5.9-i386/definition.rb +43 -0
  170. data/templates/CentOS-5.9-i386/ks.cfg +47 -0
  171. data/templates/CentOS-5.9-i386/puppet.sh +18 -0
  172. data/templates/CentOS-5.9-i386/ruby.sh +12 -0
  173. data/templates/CentOS-5.9-i386/vagrant.sh +18 -0
  174. data/templates/CentOS-5.9-i386/virtualbox.sh +8 -0
  175. data/templates/CentOS-5.9-i386/vmfusion.sh +7 -0
  176. data/templates/{Debian-7.0-b4-i386-netboot → CentOS-5.9-i386}/zerodisk.sh +0 -0
  177. data/templates/CentOS-5.9-x86_64-netboot/base.sh +9 -0
  178. data/templates/CentOS-5.9-x86_64-netboot/cfengine.sh +69 -0
  179. data/templates/CentOS-5.9-x86_64-netboot/chef.sh +3 -0
  180. data/templates/CentOS-5.9-x86_64-netboot/cleanup.sh +7 -0
  181. data/templates/CentOS-5.9-x86_64-netboot/definition.rb +43 -0
  182. data/templates/CentOS-5.9-x86_64-netboot/ks.cfg +47 -0
  183. data/templates/CentOS-5.9-x86_64-netboot/puppet.sh +18 -0
  184. data/templates/CentOS-5.9-x86_64-netboot/ruby.sh +12 -0
  185. data/templates/CentOS-5.9-x86_64-netboot/vagrant.sh +18 -0
  186. data/templates/CentOS-5.9-x86_64-netboot/virtualbox.sh +8 -0
  187. data/templates/CentOS-5.9-x86_64-netboot/vmfusion.sh +7 -0
  188. data/templates/CentOS-5.9-x86_64-netboot/zerodisk.sh +3 -0
  189. data/templates/CentOS-5.9-x86_64/base.sh +9 -0
  190. data/templates/CentOS-5.9-x86_64/cfengine.sh +69 -0
  191. data/templates/CentOS-5.9-x86_64/chef.sh +3 -0
  192. data/templates/CentOS-5.9-x86_64/cleanup.sh +7 -0
  193. data/templates/CentOS-5.9-x86_64/definition.rb +43 -0
  194. data/templates/CentOS-5.9-x86_64/ks.cfg +47 -0
  195. data/templates/CentOS-5.9-x86_64/puppet.sh +18 -0
  196. data/templates/CentOS-5.9-x86_64/ruby.sh +12 -0
  197. data/templates/CentOS-5.9-x86_64/vagrant.sh +18 -0
  198. data/templates/CentOS-5.9-x86_64/virtualbox.sh +8 -0
  199. data/templates/CentOS-5.9-x86_64/vmfusion.sh +7 -0
  200. data/templates/CentOS-5.9-x86_64/zerodisk.sh +3 -0
  201. data/templates/CentOS-6.0-i386-netboot/base.sh +3 -0
  202. data/templates/CentOS-6.0-i386-netboot/definition.rb +1 -1
  203. data/templates/CentOS-6.0-i386-netboot/puppet.sh +7 -1
  204. data/templates/CentOS-6.0-i386/base.sh +2 -0
  205. data/templates/CentOS-6.0-i386/definition.rb +1 -1
  206. data/templates/CentOS-6.0-i386/puppet.sh +7 -1
  207. data/templates/CentOS-6.0-x86_64-minimal/base.sh +2 -0
  208. data/templates/CentOS-6.0-x86_64-minimal/definition.rb +2 -2
  209. data/templates/CentOS-6.0-x86_64-minimal/puppet.sh +7 -1
  210. data/templates/CentOS-6.0-x86_64-netboot/base.sh +2 -0
  211. data/templates/CentOS-6.0-x86_64-netboot/definition.rb +2 -2
  212. data/templates/CentOS-6.0-x86_64-netboot/puppet.sh +7 -1
  213. data/templates/CentOS-6.0-x86_64/base.sh +2 -0
  214. data/templates/CentOS-6.0-x86_64/definition.rb +2 -2
  215. data/templates/CentOS-6.0-x86_64/puppet.sh +7 -1
  216. data/templates/CentOS-6.1-x86_64-minimal/base.sh +2 -0
  217. data/templates/CentOS-6.1-x86_64-minimal/definition.rb +2 -2
  218. data/templates/CentOS-6.1-x86_64-minimal/puppet.sh +7 -1
  219. data/templates/CentOS-6.1-x86_64-netboot/base.sh +2 -0
  220. data/templates/CentOS-6.1-x86_64-netboot/definition.rb +2 -2
  221. data/templates/CentOS-6.1-x86_64-netboot/puppet.sh +7 -1
  222. data/templates/CentOS-6.2-i386-minimal/base.sh +2 -0
  223. data/templates/CentOS-6.2-i386-minimal/definition.rb +1 -1
  224. data/templates/CentOS-6.2-i386-minimal/puppet.sh +7 -1
  225. data/templates/CentOS-6.2-x86_64-minimal/base.sh +2 -0
  226. data/templates/CentOS-6.2-x86_64-minimal/definition.rb +2 -2
  227. data/templates/CentOS-6.2-x86_64-minimal/puppet.sh +7 -1
  228. data/templates/CentOS-6.2-x86_64-netboot/definition.rb +2 -2
  229. data/templates/CentOS-6.2-x86_64-netboot/puppet.sh +7 -1
  230. data/templates/CentOS-6.3-i386-minimal/base.sh +2 -0
  231. data/templates/CentOS-6.3-i386-minimal/puppet.sh +7 -1
  232. data/templates/CentOS-6.3-x86_64-minimal/base.sh +2 -0
  233. data/templates/CentOS-6.3-x86_64-minimal/definition.rb +1 -1
  234. data/templates/CentOS-6.3-x86_64-minimal/puppet.sh +7 -1
  235. data/templates/CentOS-6.3-x86_64-netboot/base.sh +2 -0
  236. data/templates/CentOS-6.3-x86_64-netboot/cfengine.sh +69 -0
  237. data/templates/CentOS-6.3-x86_64-netboot/definition.rb +1 -1
  238. data/templates/CentOS-6.3-x86_64-netboot/puppet.sh +7 -1
  239. data/templates/CentOS-6.3-x86_64-reallyminimal/README.md +12 -0
  240. data/templates/CentOS-6.3-x86_64-reallyminimal/definition.rb +33 -0
  241. data/templates/CentOS-6.3-x86_64-reallyminimal/ks.cfg +100 -0
  242. data/templates/CentOS-6.3-x86_64-reallyminimal/postinstall.sh +138 -0
  243. data/templates/CentOS-6.4-i386-minimal/base.sh +16 -0
  244. data/templates/CentOS-6.4-i386-minimal/chef.sh +2 -0
  245. data/templates/CentOS-6.4-i386-minimal/cleanup.sh +8 -0
  246. data/templates/CentOS-6.4-i386-minimal/definition.rb +38 -0
  247. data/templates/CentOS-6.4-i386-minimal/ks.cfg +36 -0
  248. data/templates/CentOS-6.4-i386-minimal/puppet.sh +18 -0
  249. data/templates/CentOS-6.4-i386-minimal/vagrant.sh +18 -0
  250. data/templates/CentOS-6.4-i386-minimal/virtualbox.sh +8 -0
  251. data/templates/CentOS-6.4-i386-minimal/vmfusion.sh +7 -0
  252. data/templates/CentOS-6.4-i386-minimal/zerodisk.sh +3 -0
  253. data/templates/CentOS-6.4-i386-netboot/base.sh +16 -0
  254. data/templates/CentOS-6.4-i386-netboot/cfengine.sh +69 -0
  255. data/templates/CentOS-6.4-i386-netboot/chef.sh +3 -0
  256. data/templates/CentOS-6.4-i386-netboot/cleanup.sh +8 -0
  257. data/templates/CentOS-6.4-i386-netboot/definition.rb +40 -0
  258. data/templates/CentOS-6.4-i386-netboot/ks.cfg +41 -0
  259. data/templates/CentOS-6.4-i386-netboot/puppet.sh +18 -0
  260. data/templates/CentOS-6.4-i386-netboot/ruby.sh +3 -0
  261. data/templates/CentOS-6.4-i386-netboot/vagrant.sh +18 -0
  262. data/templates/CentOS-6.4-i386-netboot/virtualbox.sh +8 -0
  263. data/templates/CentOS-6.4-i386-netboot/vmfusion.sh +7 -0
  264. data/templates/CentOS-6.4-i386-netboot/zerodisk.sh +3 -0
  265. data/templates/CentOS-6.4-x86_64-minimal/base.sh +16 -0
  266. data/templates/CentOS-6.4-x86_64-minimal/chef.sh +2 -0
  267. data/templates/CentOS-6.4-x86_64-minimal/cleanup.sh +8 -0
  268. data/templates/CentOS-6.4-x86_64-minimal/definition.rb +38 -0
  269. data/templates/CentOS-6.4-x86_64-minimal/ks.cfg +36 -0
  270. data/templates/CentOS-6.4-x86_64-minimal/puppet.sh +18 -0
  271. data/templates/CentOS-6.4-x86_64-minimal/vagrant.sh +18 -0
  272. data/templates/CentOS-6.4-x86_64-minimal/virtualbox.sh +8 -0
  273. data/templates/CentOS-6.4-x86_64-minimal/vmfusion.sh +7 -0
  274. data/templates/CentOS-6.4-x86_64-minimal/zerodisk.sh +3 -0
  275. data/templates/CentOS-6.4-x86_64-netboot/base.sh +16 -0
  276. data/templates/CentOS-6.4-x86_64-netboot/cfengine.sh +69 -0
  277. data/templates/CentOS-6.4-x86_64-netboot/chef.sh +3 -0
  278. data/templates/CentOS-6.4-x86_64-netboot/cleanup.sh +8 -0
  279. data/templates/CentOS-6.4-x86_64-netboot/definition.rb +40 -0
  280. data/templates/CentOS-6.4-x86_64-netboot/ks.cfg +41 -0
  281. data/templates/CentOS-6.4-x86_64-netboot/puppet.sh +18 -0
  282. data/templates/CentOS-6.4-x86_64-netboot/ruby.sh +3 -0
  283. data/templates/CentOS-6.4-x86_64-netboot/vagrant.sh +18 -0
  284. data/templates/CentOS-6.4-x86_64-netboot/virtualbox.sh +8 -0
  285. data/templates/CentOS-6.4-x86_64-netboot/vmfusion.sh +7 -0
  286. data/templates/CentOS-6.4-x86_64-netboot/zerodisk.sh +3 -0
  287. data/templates/Debian-5.0.10-amd64-netboot/base.sh +4 -0
  288. data/templates/Debian-5.0.10-amd64-netboot/definition.rb +10 -1
  289. data/templates/Debian-5.0.10-amd64-netboot/preseed.cfg +5 -3
  290. data/templates/Debian-5.0.10-amd64-netboot/ruby.sh +7 -6
  291. data/templates/Debian-5.0.10-amd64-netboot/vagrant.sh +4 -0
  292. data/templates/Debian-5.0.10-amd64-netboot/virtualbox.sh +12 -7
  293. data/templates/Debian-5.0.10-amd64-netboot/zerodisk.sh +3 -0
  294. data/templates/Debian-5.0.10-i386-netboot/base.sh +4 -0
  295. data/templates/Debian-5.0.10-i386-netboot/definition.rb +10 -1
  296. data/templates/Debian-5.0.10-i386-netboot/preseed.cfg +5 -3
  297. data/templates/Debian-5.0.10-i386-netboot/ruby.sh +7 -6
  298. data/templates/Debian-5.0.10-i386-netboot/vagrant.sh +4 -0
  299. data/templates/Debian-5.0.10-i386-netboot/virtualbox.sh +12 -7
  300. data/templates/Debian-5.0.10-i386-netboot/zerodisk.sh +3 -0
  301. data/templates/Debian-5.0.8-amd64-netboot/base.sh +4 -0
  302. data/templates/Debian-5.0.8-amd64-netboot/definition.rb +10 -1
  303. data/templates/Debian-5.0.8-amd64-netboot/preseed.cfg +5 -3
  304. data/templates/Debian-5.0.8-amd64-netboot/vagrant.sh +4 -0
  305. data/templates/Debian-5.0.8-amd64-netboot/virtualbox.sh +12 -7
  306. data/templates/Debian-5.0.8-amd64-netboot/zerodisk.sh +3 -0
  307. data/templates/Debian-5.0.8-i386-netboot/base.sh +4 -0
  308. data/templates/Debian-5.0.8-i386-netboot/definition.rb +10 -1
  309. data/templates/Debian-5.0.8-i386-netboot/preseed.cfg +5 -3
  310. data/templates/Debian-5.0.8-i386-netboot/vagrant.sh +4 -0
  311. data/templates/Debian-5.0.8-i386-netboot/virtualbox.sh +12 -7
  312. data/templates/Debian-5.0.8-i386-netboot/zerodisk.sh +3 -0
  313. data/templates/Debian-6.0.3-amd64-netboot/definition.rb +3 -1
  314. data/templates/Debian-6.0.3-amd64-netboot/preseed.cfg +2 -2
  315. data/templates/Debian-6.0.3-i386-netboot/definition.rb +3 -1
  316. data/templates/Debian-6.0.3-i386-netboot/preseed.cfg +2 -2
  317. data/templates/Debian-6.0.4-amd64-netboot/definition.rb +3 -1
  318. data/templates/Debian-6.0.4-amd64-netboot/preseed.cfg +2 -2
  319. data/templates/Debian-6.0.4-i386-netboot/definition.rb +4 -2
  320. data/templates/Debian-6.0.4-i386-netboot/preseed.cfg +2 -2
  321. data/templates/Debian-6.0.5-amd64-netboot/definition.rb +3 -1
  322. data/templates/Debian-6.0.5-amd64-netboot/preseed.cfg +2 -2
  323. data/templates/Debian-6.0.5-i386-netboot/definition.rb +3 -1
  324. data/templates/Debian-6.0.5-i386-netboot/preseed.cfg +3 -3
  325. data/templates/Debian-6.0.6-amd64-netboot/base.sh +6 -2
  326. data/templates/Debian-6.0.6-amd64-netboot/chef.sh +1 -1
  327. data/templates/Debian-6.0.6-amd64-netboot/definition.rb +5 -3
  328. data/templates/Debian-6.0.6-amd64-netboot/preseed.cfg +2 -2
  329. data/templates/Debian-6.0.6-amd64-netboot/puppet.sh +1 -1
  330. data/templates/Debian-6.0.6-amd64-netboot/ruby.sh +25 -9
  331. data/templates/Debian-6.0.6-amd64-netboot/vagrant.sh +0 -2
  332. data/templates/Debian-6.0.6-amd64-netboot/virtualbox.sh +17 -12
  333. data/templates/Debian-6.0.6-amd64-netboot/vmfusion.sh +7 -0
  334. data/templates/Debian-6.0.6-i386-netboot/base.sh +0 -1
  335. data/templates/Debian-6.0.6-i386-netboot/cleanup.sh +1 -0
  336. data/templates/Debian-6.0.6-i386-netboot/definition.rb +11 -2
  337. data/templates/Debian-6.0.6-i386-netboot/preseed.cfg +3 -3
  338. data/templates/Debian-6.0.6-i386-netboot/virtualbox.sh +3 -0
  339. data/templates/Debian-6.0.7-amd64-netboot/base.sh +27 -0
  340. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-6.0.7-amd64-netboot}/chef.sh +0 -0
  341. data/templates/{Debian-6.0.6-amd64-netboot → Debian-6.0.7-amd64-netboot}/cleanup-virtualbox.sh +0 -0
  342. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-6.0.7-amd64-netboot}/cleanup.sh +0 -0
  343. data/templates/Debian-6.0.7-amd64-netboot/definition.rb +50 -0
  344. data/templates/{Debian-7.0-b4-i386-netboot → Debian-6.0.7-amd64-netboot}/preseed.cfg +2 -2
  345. data/templates/Debian-6.0.7-amd64-netboot/puppet.sh +7 -0
  346. data/templates/Debian-6.0.7-amd64-netboot/ruby.sh +10 -0
  347. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-6.0.7-amd64-netboot}/vagrant.sh +0 -0
  348. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-6.0.7-amd64-netboot}/virtualbox.sh +6 -1
  349. data/templates/Debian-6.0.7-amd64-netboot/vmfusion.sh +7 -0
  350. data/templates/Debian-6.0.7-amd64-netboot/zerodisk.sh +3 -0
  351. data/templates/Debian-6.0.7-i386-netboot/base.sh +26 -0
  352. data/templates/{Debian-7.0-b4-i386-netboot → Debian-6.0.7-i386-netboot}/chef.sh +0 -0
  353. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-6.0.7-i386-netboot}/cleanup-virtualbox.sh +0 -0
  354. data/templates/Debian-6.0.7-i386-netboot/cleanup.sh +18 -0
  355. data/templates/Debian-6.0.7-i386-netboot/definition.rb +59 -0
  356. data/templates/Debian-6.0.7-i386-netboot/preseed.cfg +315 -0
  357. data/templates/Debian-6.0.7-i386-netboot/puppet.sh +7 -0
  358. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-6.0.7-i386-netboot}/ruby.sh +0 -0
  359. data/templates/{Debian-7.0-b4-i386-netboot → Debian-6.0.7-i386-netboot}/vagrant.sh +0 -0
  360. data/templates/{Debian-7.0-b4-i386-netboot → Debian-6.0.7-i386-netboot}/virtualbox.sh +3 -0
  361. data/templates/Debian-6.0.7-i386-netboot/vmfusion.sh +7 -0
  362. data/templates/Debian-6.0.7-i386-netboot/zerodisk.sh +3 -0
  363. data/templates/Debian-7.0-amd64-netboot/base.sh +25 -0
  364. data/templates/Debian-7.0-amd64-netboot/chef.sh +49 -0
  365. data/templates/{Debian-7.0-b4-i386-netboot → Debian-7.0-amd64-netboot}/cleanup-virtualbox.sh +0 -0
  366. data/templates/Debian-7.0-amd64-netboot/cleanup.sh +18 -0
  367. data/templates/Debian-7.0-amd64-netboot/definition.rb +55 -0
  368. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-7.0-amd64-netboot}/preseed.cfg +4 -4
  369. data/templates/Debian-7.0-amd64-netboot/puppet.sh +7 -0
  370. data/templates/{Debian-7.0-b4-i386-netboot → Debian-7.0-amd64-netboot}/ruby.sh +0 -0
  371. data/templates/Debian-7.0-amd64-netboot/vagrant.sh +21 -0
  372. data/templates/Debian-7.0-amd64-netboot/virtualbox.sh +34 -0
  373. data/templates/Debian-7.0-amd64-netboot/vmfusion.sh +7 -0
  374. data/templates/Debian-7.0-amd64-netboot/zerodisk.sh +3 -0
  375. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-7.0-i386-netboot}/base.sh +1 -1
  376. data/templates/Debian-7.0-i386-netboot/chef.sh +2 -0
  377. data/templates/Debian-7.0-i386-netboot/cleanup-virtualbox.sh +4 -0
  378. data/templates/{Debian-7.0-b4-i386-netboot → Debian-7.0-i386-netboot}/cleanup.sh +0 -0
  379. data/templates/Debian-7.0-i386-netboot/definition.rb +56 -0
  380. data/templates/Debian-7.0-i386-netboot/preseed.cfg +315 -0
  381. data/templates/Debian-7.0-i386-netboot/puppet.sh +7 -0
  382. data/templates/Debian-7.0-i386-netboot/ruby.sh +10 -0
  383. data/templates/Debian-7.0-i386-netboot/vagrant.sh +23 -0
  384. data/templates/Debian-7.0-i386-netboot/virtualbox.sh +34 -0
  385. data/templates/Debian-7.0-i386-netboot/vmfusion.sh +7 -0
  386. data/templates/Debian-7.0-i386-netboot/zerodisk.sh +3 -0
  387. data/templates/Debian-7.1.0-amd64-netboot/base.sh +25 -0
  388. data/templates/Debian-7.1.0-amd64-netboot/chef.sh +49 -0
  389. data/templates/Debian-7.1.0-amd64-netboot/cleanup-virtualbox.sh +4 -0
  390. data/templates/Debian-7.1.0-amd64-netboot/cleanup.sh +18 -0
  391. data/templates/Debian-7.1.0-amd64-netboot/definition.rb +53 -0
  392. data/templates/Debian-7.1.0-amd64-netboot/preseed.cfg +313 -0
  393. data/templates/Debian-7.1.0-amd64-netboot/puppet.sh +7 -0
  394. data/templates/Debian-7.1.0-amd64-netboot/ruby.sh +10 -0
  395. data/templates/Debian-7.1.0-amd64-netboot/vagrant.sh +21 -0
  396. data/templates/Debian-7.1.0-amd64-netboot/virtualbox.sh +34 -0
  397. data/templates/Debian-7.1.0-amd64-netboot/vmfusion.sh +7 -0
  398. data/templates/Debian-7.1.0-amd64-netboot/zerodisk.sh +3 -0
  399. data/templates/{Debian-7.0-b4-i386-netboot → Debian-7.1.0-i386-netboot}/base.sh +1 -1
  400. data/templates/Debian-7.1.0-i386-netboot/chef.sh +2 -0
  401. data/templates/Debian-7.1.0-i386-netboot/cleanup-virtualbox.sh +4 -0
  402. data/templates/Debian-7.1.0-i386-netboot/cleanup.sh +17 -0
  403. data/templates/{Debian-7.0-b4-i386-netboot → Debian-7.1.0-i386-netboot}/definition.rb +5 -5
  404. data/templates/Debian-7.1.0-i386-netboot/preseed.cfg +315 -0
  405. data/templates/Debian-7.1.0-i386-netboot/puppet.sh +7 -0
  406. data/templates/Debian-7.1.0-i386-netboot/ruby.sh +10 -0
  407. data/templates/Debian-7.1.0-i386-netboot/vagrant.sh +23 -0
  408. data/templates/Debian-7.1.0-i386-netboot/virtualbox.sh +34 -0
  409. data/templates/Debian-7.1.0-i386-netboot/vmfusion.sh +7 -0
  410. data/templates/Debian-7.1.0-i386-netboot/zerodisk.sh +3 -0
  411. data/templates/Debian-7.2.0-amd64-netboot/base.sh +25 -0
  412. data/templates/Debian-7.2.0-amd64-netboot/chef.sh +49 -0
  413. data/templates/Debian-7.2.0-amd64-netboot/cleanup-virtualbox.sh +4 -0
  414. data/templates/Debian-7.2.0-amd64-netboot/cleanup.sh +18 -0
  415. data/templates/Debian-7.2.0-amd64-netboot/definition.rb +53 -0
  416. data/templates/Debian-7.2.0-amd64-netboot/preseed.cfg +313 -0
  417. data/templates/Debian-7.2.0-amd64-netboot/puppet.sh +7 -0
  418. data/templates/Debian-7.2.0-amd64-netboot/ruby.sh +10 -0
  419. data/templates/Debian-7.2.0-amd64-netboot/vagrant.sh +21 -0
  420. data/templates/Debian-7.2.0-amd64-netboot/virtualbox.sh +34 -0
  421. data/templates/Debian-7.2.0-amd64-netboot/vmfusion.sh +7 -0
  422. data/templates/Debian-7.2.0-amd64-netboot/zerodisk.sh +3 -0
  423. data/templates/Debian-7.2.0-i386-netboot/base.sh +26 -0
  424. data/templates/Debian-7.2.0-i386-netboot/chef.sh +2 -0
  425. data/templates/Debian-7.2.0-i386-netboot/cleanup-virtualbox.sh +4 -0
  426. data/templates/Debian-7.2.0-i386-netboot/cleanup.sh +17 -0
  427. data/templates/{Debian-7.0-b4-amd64-netboot → Debian-7.2.0-i386-netboot}/definition.rb +5 -5
  428. data/templates/Debian-7.2.0-i386-netboot/preseed.cfg +315 -0
  429. data/templates/Debian-7.2.0-i386-netboot/puppet.sh +7 -0
  430. data/templates/Debian-7.2.0-i386-netboot/ruby.sh +10 -0
  431. data/templates/Debian-7.2.0-i386-netboot/vagrant.sh +23 -0
  432. data/templates/Debian-7.2.0-i386-netboot/virtualbox.sh +34 -0
  433. data/templates/Debian-7.2.0-i386-netboot/vmfusion.sh +7 -0
  434. data/templates/Debian-7.2.0-i386-netboot/zerodisk.sh +3 -0
  435. data/templates/Fedora-14-amd64-netboot/ks.cfg +3 -3
  436. data/templates/Fedora-14-amd64/ks.cfg +3 -3
  437. data/templates/Fedora-14-i386-netboot/ks.cfg +3 -3
  438. data/templates/Fedora-14-i386/ks.cfg +3 -3
  439. data/templates/Fedora-15-i386-netboot/ks.cfg +2 -2
  440. data/templates/Fedora-15-i386/ks.cfg +2 -2
  441. data/templates/Fedora-15-x86_64-netboot/ks.cfg +2 -2
  442. data/templates/Fedora-15-x86_64/definition.rb +1 -1
  443. data/templates/Fedora-15-x86_64/ks.cfg +2 -2
  444. data/templates/Fedora-16-i386/ks.cfg +2 -2
  445. data/templates/Fedora-16-x86_64-netboot/ks.cfg +2 -2
  446. data/templates/Fedora-16-x86_64/ks.cfg +2 -2
  447. data/templates/Fedora-17-i386/ks.cfg +2 -2
  448. data/templates/Fedora-17-x86_64/ks.cfg +2 -2
  449. data/templates/Fedora-18-i386/base.sh +12 -0
  450. data/templates/Fedora-18-i386/chef.sh +17 -0
  451. data/templates/Fedora-18-i386/cleanup.sh +6 -0
  452. data/templates/Fedora-18-i386/definition.rb +32 -10
  453. data/templates/Fedora-18-i386/ks.cfg +2 -2
  454. data/templates/Fedora-18-i386/puppet.sh +2 -0
  455. data/templates/Fedora-18-i386/ruby.sh +3 -0
  456. data/templates/Fedora-18-i386/vagrant.sh +18 -0
  457. data/templates/Fedora-18-i386/virtualbox.sh +8 -0
  458. data/templates/Fedora-18-i386/vmfusion.sh +7 -0
  459. data/templates/Fedora-18-i386/zerodisk.sh +3 -0
  460. data/templates/Fedora-18-x86_64/base.sh +12 -0
  461. data/templates/Fedora-18-x86_64/chef.sh +17 -0
  462. data/templates/Fedora-18-x86_64/cleanup.sh +6 -0
  463. data/templates/Fedora-18-x86_64/definition.rb +32 -10
  464. data/templates/Fedora-18-x86_64/ks.cfg +2 -2
  465. data/templates/Fedora-18-x86_64/puppet.sh +2 -0
  466. data/templates/Fedora-18-x86_64/ruby.sh +3 -0
  467. data/templates/Fedora-18-x86_64/vagrant.sh +18 -0
  468. data/templates/Fedora-18-x86_64/virtualbox.sh +8 -0
  469. data/templates/Fedora-18-x86_64/vmfusion.sh +7 -0
  470. data/templates/Fedora-18-x86_64/zerodisk.sh +3 -0
  471. data/templates/Fedora-19-i386/base.sh +9 -0
  472. data/templates/Fedora-19-i386/chef.sh +17 -0
  473. data/templates/Fedora-19-i386/cleanup.sh +6 -0
  474. data/templates/Fedora-19-i386/definition.rb +39 -0
  475. data/templates/Fedora-19-i386/ks.cfg +83 -0
  476. data/templates/Fedora-19-i386/puppet.sh +2 -0
  477. data/templates/Fedora-19-i386/ruby.sh +3 -0
  478. data/templates/Fedora-19-i386/vagrant.sh +18 -0
  479. data/templates/Fedora-19-i386/virtualbox.sh +4 -0
  480. data/templates/Fedora-19-i386/vmfusion.sh +7 -0
  481. data/templates/Fedora-19-i386/zerodisk.sh +3 -0
  482. data/templates/Fedora-19-x86_64/base.sh +9 -0
  483. data/templates/Fedora-19-x86_64/chef.sh +17 -0
  484. data/templates/Fedora-19-x86_64/cleanup.sh +6 -0
  485. data/templates/Fedora-19-x86_64/definition.rb +39 -0
  486. data/templates/Fedora-19-x86_64/ks.cfg +83 -0
  487. data/templates/Fedora-19-x86_64/puppet.sh +2 -0
  488. data/templates/Fedora-19-x86_64/ruby.sh +3 -0
  489. data/templates/Fedora-19-x86_64/vagrant.sh +18 -0
  490. data/templates/Fedora-19-x86_64/virtualbox.sh +4 -0
  491. data/templates/Fedora-19-x86_64/vmfusion.sh +7 -0
  492. data/templates/Fedora-19-x86_64/zerodisk.sh +3 -0
  493. data/templates/OSX/NOTICE.erb +23 -0
  494. data/templates/OSX/chef-omnibus.sh +6 -0
  495. data/templates/OSX/definition.rb +31 -0
  496. data/templates/OSX/fix_user_perms.sh +3 -0
  497. data/templates/OSX/postinstall.sh +28 -0
  498. data/templates/OSX/prepare_veewee_iso/prepare_veewee_iso.sh +281 -0
  499. data/templates/OSX/prepare_veewee_iso/support/10_8_AP_bomlist +34 -0
  500. data/templates/OSX/prepare_veewee_iso/support/OSInstall.collection +9 -0
  501. data/templates/OSX/prepare_veewee_iso/support/PartitionInfo.plist +0 -0
  502. data/templates/OSX/prepare_veewee_iso/support/com.vagrantup.veewee.plist +14 -0
  503. data/templates/OSX/prepare_veewee_iso/support/minstallconfig.xml +16 -0
  504. data/templates/OSX/prepare_veewee_iso/support/pkg-postinstall +25 -0
  505. data/templates/OSX/prepare_veewee_iso/support/shadowhash +1 -0
  506. data/templates/OSX/prepare_veewee_iso/support/vagrant.plist +804 -0
  507. data/templates/OSX/puppet.sh +18 -0
  508. data/templates/OSX/rvm.bash +17 -0
  509. data/templates/OSX/xcode-cli-tools.sh +19 -0
  510. data/templates/OracleLinux-5.9-i386-DVD/base.sh +26 -0
  511. data/templates/OracleLinux-5.9-i386-DVD/chef.sh +3 -0
  512. data/templates/OracleLinux-5.9-i386-DVD/cleanup.sh +8 -0
  513. data/templates/OracleLinux-5.9-i386-DVD/definition.rb +37 -0
  514. data/templates/OracleLinux-5.9-i386-DVD/ks.cfg +35 -0
  515. data/templates/OracleLinux-5.9-i386-DVD/proxy.sh +4 -0
  516. data/templates/OracleLinux-5.9-i386-DVD/puppet.sh +3 -0
  517. data/templates/OracleLinux-5.9-i386-DVD/ruby.sh +36 -0
  518. data/templates/OracleLinux-5.9-i386-DVD/vagrant.sh +21 -0
  519. data/templates/OracleLinux-5.9-i386-DVD/virtualbox.sh +8 -0
  520. data/templates/OracleLinux-5.9-i386-DVD/zerodisk.sh +3 -0
  521. data/templates/OracleLinux-5.9-x86_64-DVD/base.sh +26 -0
  522. data/templates/OracleLinux-5.9-x86_64-DVD/chef.sh +3 -0
  523. data/templates/OracleLinux-5.9-x86_64-DVD/cleanup.sh +8 -0
  524. data/templates/OracleLinux-5.9-x86_64-DVD/definition.rb +37 -0
  525. data/templates/OracleLinux-5.9-x86_64-DVD/ks.cfg +35 -0
  526. data/templates/OracleLinux-5.9-x86_64-DVD/proxy.sh +4 -0
  527. data/templates/OracleLinux-5.9-x86_64-DVD/puppet.sh +3 -0
  528. data/templates/OracleLinux-5.9-x86_64-DVD/ruby.sh +36 -0
  529. data/templates/OracleLinux-5.9-x86_64-DVD/vagrant.sh +21 -0
  530. data/templates/OracleLinux-5.9-x86_64-DVD/virtualbox.sh +8 -0
  531. data/templates/OracleLinux-5.9-x86_64-DVD/zerodisk.sh +3 -0
  532. data/templates/OracleLinux-6.3-x86_64-DVD/definition.rb +1 -0
  533. data/templates/OracleLinux-6.3-x86_64-DVD/nfs.sh +2 -0
  534. data/templates/OracleLinux-6.3-x86_64-DVD/puppet.sh +6 -0
  535. data/templates/OracleLinux-6.4-i386-DVD/base.sh +25 -0
  536. data/templates/OracleLinux-6.4-i386-DVD/chef.sh +3 -0
  537. data/templates/OracleLinux-6.4-i386-DVD/cleanup.sh +9 -0
  538. data/templates/OracleLinux-6.4-i386-DVD/definition.rb +39 -0
  539. data/templates/OracleLinux-6.4-i386-DVD/ks.cfg +36 -0
  540. data/templates/OracleLinux-6.4-i386-DVD/proxy.sh +4 -0
  541. data/templates/OracleLinux-6.4-i386-DVD/puppet.sh +10 -0
  542. data/templates/OracleLinux-6.4-i386-DVD/ruby.sh +5 -0
  543. data/templates/OracleLinux-6.4-i386-DVD/vagrant.sh +21 -0
  544. data/templates/OracleLinux-6.4-i386-DVD/virtualbox.sh +8 -0
  545. data/templates/OracleLinux-6.4-i386-DVD/zerodisk.sh +3 -0
  546. data/templates/OracleLinux-6.4-x86_64-DVD/base.sh +25 -0
  547. data/templates/OracleLinux-6.4-x86_64-DVD/chef.sh +3 -0
  548. data/templates/OracleLinux-6.4-x86_64-DVD/cleanup.sh +9 -0
  549. data/templates/OracleLinux-6.4-x86_64-DVD/definition.rb +39 -0
  550. data/templates/OracleLinux-6.4-x86_64-DVD/ks.cfg +36 -0
  551. data/templates/OracleLinux-6.4-x86_64-DVD/proxy.sh +4 -0
  552. data/templates/OracleLinux-6.4-x86_64-DVD/puppet.sh +10 -0
  553. data/templates/OracleLinux-6.4-x86_64-DVD/ruby.sh +5 -0
  554. data/templates/OracleLinux-6.4-x86_64-DVD/vagrant.sh +21 -0
  555. data/templates/OracleLinux-6.4-x86_64-DVD/virtualbox.sh +8 -0
  556. data/templates/OracleLinux-6.4-x86_64-DVD/zerodisk.sh +3 -0
  557. data/templates/SLES-11-SP2-DVD-x86_64-GM/autoinst.xml +2578 -0
  558. data/templates/SLES-11-SP2-DVD-x86_64-GM/definition.rb +33 -0
  559. data/templates/SLES-11-SP2-DVD-x86_64-GM/postinstall.sh +51 -0
  560. data/templates/VMware-ESXi-5.0u2-x86_64/definition.rb +26 -0
  561. data/templates/VMware-ESXi-5.0u2-x86_64/ks.cfg +63 -0
  562. data/templates/VMware-ESXi-5.0u2-x86_64/vagrant_key.py +6 -0
  563. data/templates/VMware-ESXi-5.0u2-x86_64/vnc_enable.sh +40 -0
  564. data/templates/VMware-ESXi-5.1-x86_64/definition.rb +27 -0
  565. data/templates/VMware-ESXi-5.1-x86_64/ks.cfg +63 -0
  566. data/templates/VMware-ESXi-5.1-x86_64/vagrant_key.py +6 -0
  567. data/templates/VMware-ESXi-5.1-x86_64/vnc_enable.sh +41 -0
  568. data/templates/archlinux-x86_64/README.md +51 -0
  569. data/templates/archlinux-x86_64/aur.sh +22 -0
  570. data/templates/archlinux-x86_64/base.sh +46 -0
  571. data/templates/archlinux-x86_64/basedevel.sh +6 -0
  572. data/templates/archlinux-x86_64/bootloader.sh +11 -0
  573. data/templates/archlinux-x86_64/chef.sh +31 -0
  574. data/templates/archlinux-x86_64/cleanup.sh +18 -0
  575. data/templates/archlinux-x86_64/definition.rb +57 -23
  576. data/templates/archlinux-x86_64/pacman.sh +28 -0
  577. data/templates/archlinux-x86_64/puppet.sh +22 -0
  578. data/templates/archlinux-x86_64/reboot.sh +22 -0
  579. data/templates/archlinux-x86_64/ruby.sh +27 -0
  580. data/templates/archlinux-x86_64/ssh.sh +18 -0
  581. data/templates/archlinux-x86_64/sudo.sh +12 -0
  582. data/templates/archlinux-x86_64/user.sh +11 -0
  583. data/templates/archlinux-x86_64/vagrant.sh +27 -0
  584. data/templates/archlinux-x86_64/virtualbox.sh +23 -0
  585. data/templates/archlinux-x86_64/zerodisk.sh +11 -0
  586. data/templates/freebsd-8.2-pcbsd-amd64/definition.rb +26 -0
  587. data/templates/freebsd-8.2-pcbsd-amd64/pcinstall.fbg.cfg +57 -0
  588. data/templates/freebsd-8.2-pcbsd-amd64/postinstall.sh +95 -0
  589. data/templates/freebsd-8.2-pcbsd-i386-netboot/pcinstall.fbg.cfg +2 -2
  590. data/templates/freebsd-8.2-pcbsd-i386-netboot/postinstall.sh +32 -30
  591. data/templates/freebsd-8.2-pcbsd-i386/pcinstall.fbg.cfg +1 -1
  592. data/templates/freebsd-8.2-pcbsd-i386/postinstall.sh +31 -29
  593. data/templates/freebsd-9.0-RELEASE-amd64/definition.rb +22 -9
  594. data/templates/freebsd-9.0-RELEASE-amd64/install.sh +103 -0
  595. data/templates/freebsd-9.0-RELEASE-amd64/postinstall.sh +72 -48
  596. data/templates/freebsd-9.1-RELEASE-amd64/definition.rb +32 -0
  597. data/templates/freebsd-9.1-RELEASE-amd64/install.sh +95 -0
  598. data/templates/freebsd-9.1-RELEASE-amd64/postinstall.csh +136 -0
  599. data/templates/funtoo-latest-x86_64/definition.rb +8 -6
  600. data/templates/funtoo-latest-x86_64/postinstall.sh +16 -0
  601. data/templates/gentoo-latest-amd64/base.sh +89 -0
  602. data/templates/gentoo-latest-amd64/chef.sh +7 -0
  603. data/templates/gentoo-latest-amd64/cleanup.sh +23 -0
  604. data/templates/gentoo-latest-amd64/cron.sh +8 -0
  605. data/templates/gentoo-latest-amd64/definition.rb +59 -0
  606. data/templates/gentoo-latest-amd64/grub.sh +23 -0
  607. data/templates/gentoo-latest-amd64/kernel.sh +109 -0
  608. data/templates/gentoo-latest-amd64/nfs.sh +11 -0
  609. data/templates/gentoo-latest-amd64/puppet.sh +7 -0
  610. data/templates/gentoo-latest-amd64/reboot.sh +4 -0
  611. data/templates/gentoo-latest-amd64/ruby.sh +17 -0
  612. data/templates/gentoo-latest-amd64/settings.sh +37 -0
  613. data/templates/gentoo-latest-amd64/syslog.sh +8 -0
  614. data/templates/gentoo-latest-amd64/vagrant.sh +57 -0
  615. data/templates/gentoo-latest-amd64/virtualbox.sh +23 -0
  616. data/templates/gentoo-latest-amd64/zerodisk.sh +15 -0
  617. data/templates/gentoo-latest-i686/base.sh +84 -0
  618. data/templates/gentoo-latest-i686/chef.sh +7 -0
  619. data/templates/gentoo-latest-i686/cleanup.sh +23 -0
  620. data/templates/gentoo-latest-i686/cron.sh +8 -0
  621. data/templates/gentoo-latest-i686/definition.rb +61 -0
  622. data/templates/gentoo-latest-i686/grub.sh +24 -0
  623. data/templates/gentoo-latest-i686/kernel.sh +109 -0
  624. data/templates/gentoo-latest-i686/nfs.sh +11 -0
  625. data/templates/gentoo-latest-i686/puppet.sh +7 -0
  626. data/templates/gentoo-latest-i686/reboot.sh +4 -0
  627. data/templates/gentoo-latest-i686/ruby_portage.sh +17 -0
  628. data/templates/gentoo-latest-i686/ruby_source.sh +15 -0
  629. data/templates/gentoo-latest-i686/settings.sh +40 -0
  630. data/templates/gentoo-latest-i686/syslog.sh +8 -0
  631. data/templates/gentoo-latest-i686/vagrant.sh +57 -0
  632. data/templates/gentoo-latest-i686/virtualbox.sh +18 -0
  633. data/templates/gentoo-latest-i686/zerodisk.sh +15 -0
  634. data/templates/nixos-minimal-0.2-i686/configuration.nix +39 -0
  635. data/templates/nixos-minimal-0.2-i686/definition.rb +50 -0
  636. data/templates/nixos-minimal-0.2-i686/postinstall.sh +28 -0
  637. data/templates/openSUSE-12.3-x86_64-NET_EN/README.md +5 -0
  638. data/templates/openSUSE-12.3-x86_64-NET_EN/autoinst.xml +211 -0
  639. data/templates/openSUSE-12.3-x86_64-NET_EN/definition.rb +37 -0
  640. data/templates/openSUSE-12.3-x86_64-NET_EN/postinstall.sh +37 -0
  641. data/templates/openSUSE-12.3-x86_64-NET_EN/virtualbox.sh +16 -0
  642. data/templates/openbsd50_amd64/definition.rb +1 -1
  643. data/templates/openbsd50_i386/definition.rb +1 -1
  644. data/templates/openbsd52_amd64/definition.rb +1 -1
  645. data/templates/openbsd52_i386/definition.rb +3 -7
  646. data/templates/openbsd52_i386_snap/README +28 -0
  647. data/templates/openbsd52_i386_snap/definition.rb +81 -0
  648. data/templates/openbsd52_i386_snap/postinstall.sh +81 -0
  649. data/templates/openbsd53_amd64/README +28 -0
  650. data/templates/openbsd53_amd64/base.sh +40 -0
  651. data/templates/openbsd53_amd64/chef.sh +2 -0
  652. data/templates/openbsd53_amd64/definition.rb +91 -0
  653. data/templates/openbsd53_amd64/puppet.sh +3 -0
  654. data/templates/openbsd53_amd64/ruby.sh +14 -0
  655. data/templates/openbsd53_amd64/vagrant.sh +27 -0
  656. data/templates/openbsd53_i386/README +28 -0
  657. data/templates/openbsd53_i386/base.sh +40 -0
  658. data/templates/openbsd53_i386/chef.sh +2 -0
  659. data/templates/openbsd53_i386/definition.rb +91 -0
  660. data/templates/openbsd53_i386/puppet.sh +3 -0
  661. data/templates/openbsd53_i386/ruby.sh +14 -0
  662. data/templates/openbsd53_i386/vagrant.sh +27 -0
  663. data/templates/openindiana-151a7-text-x86/auto_install/ai.dtd +58 -0
  664. data/templates/openindiana-151a7-text-x86/auto_install/ai_manifest.xml +241 -0
  665. data/templates/openindiana-151a7-text-x86/auto_install/configuration.dtd +44 -0
  666. data/templates/openindiana-151a7-text-x86/auto_install/default.xml +121 -0
  667. data/templates/openindiana-151a7-text-x86/auto_install/default.xml.orig +124 -0
  668. data/templates/openindiana-151a7-text-x86/auto_install/sc_profiles/static_network.xml +105 -0
  669. data/templates/openindiana-151a7-text-x86/auto_install/software.dtd +105 -0
  670. data/templates/openindiana-151a7-text-x86/auto_install/target.dtd +196 -0
  671. data/templates/openindiana-151a7-text-x86/default.xml +121 -0
  672. data/templates/openindiana-151a7-text-x86/definition.rb +56 -0
  673. data/templates/openindiana-151a7-text-x86/postinstall.sh +103 -0
  674. data/templates/scientificlinux-5.7-i386/definition.rb +16 -0
  675. data/templates/scientificlinux-5.7-i386/ks.cfg +75 -0
  676. data/templates/scientificlinux-5.7-i386/postinstall.sh +39 -0
  677. data/templates/scientificlinux-5.7-x86_64/definition.rb +16 -0
  678. data/templates/scientificlinux-5.7-x86_64/ks.cfg +75 -0
  679. data/templates/scientificlinux-5.7-x86_64/postinstall.sh +39 -0
  680. data/templates/scientificlinux-5.9-i386/definition.rb +16 -0
  681. data/templates/scientificlinux-5.9-i386/ks.cfg +75 -0
  682. data/templates/scientificlinux-5.9-i386/postinstall.sh +39 -0
  683. data/templates/scientificlinux-5.9-x86_64/definition.rb +16 -0
  684. data/templates/scientificlinux-5.9-x86_64/ks.cfg +75 -0
  685. data/templates/scientificlinux-5.9-x86_64/postinstall.sh +39 -0
  686. data/templates/scientificlinux-6.4-i386-netboot/base.sh +14 -0
  687. data/templates/scientificlinux-6.4-i386-netboot/cfengine.sh +69 -0
  688. data/templates/scientificlinux-6.4-i386-netboot/chef.sh +3 -0
  689. data/templates/scientificlinux-6.4-i386-netboot/cleanup.sh +5 -0
  690. data/templates/scientificlinux-6.4-i386-netboot/definition.rb +40 -0
  691. data/templates/scientificlinux-6.4-i386-netboot/ks.cfg +41 -0
  692. data/templates/scientificlinux-6.4-i386-netboot/puppet.sh +18 -0
  693. data/templates/scientificlinux-6.4-i386-netboot/ruby.sh +3 -0
  694. data/templates/scientificlinux-6.4-i386-netboot/vagrant.sh +18 -0
  695. data/templates/scientificlinux-6.4-i386-netboot/virtualbox.sh +8 -0
  696. data/templates/scientificlinux-6.4-i386-netboot/zerodisk.sh +3 -0
  697. data/templates/scientificlinux-6.4-x86_64-netboot/base.sh +14 -0
  698. data/templates/scientificlinux-6.4-x86_64-netboot/cfengine.sh +69 -0
  699. data/templates/scientificlinux-6.4-x86_64-netboot/chef.sh +3 -0
  700. data/templates/scientificlinux-6.4-x86_64-netboot/cleanup.sh +5 -0
  701. data/templates/scientificlinux-6.4-x86_64-netboot/definition.rb +40 -0
  702. data/templates/scientificlinux-6.4-x86_64-netboot/ks.cfg +41 -0
  703. data/templates/scientificlinux-6.4-x86_64-netboot/puppet.sh +18 -0
  704. data/templates/scientificlinux-6.4-x86_64-netboot/ruby.sh +3 -0
  705. data/templates/scientificlinux-6.4-x86_64-netboot/vagrant.sh +18 -0
  706. data/templates/scientificlinux-6.4-x86_64-netboot/virtualbox.sh +8 -0
  707. data/templates/scientificlinux-6.4-x86_64-netboot/zerodisk.sh +3 -0
  708. data/templates/solaris-10-ga-x86/README.md +39 -0
  709. data/templates/solaris-10-ga-x86/chef.sh +10 -0
  710. data/templates/solaris-10-ga-x86/cleanup.sh +18 -0
  711. data/templates/solaris-10-ga-x86/definition.rb +39 -0
  712. data/templates/solaris-10-ga-x86/jumpstart/begin +28 -0
  713. data/templates/solaris-10-ga-x86/jumpstart/finish +35 -0
  714. data/templates/solaris-10-ga-x86/jumpstart/profile +41 -0
  715. data/templates/solaris-10-ga-x86/jumpstart/rules +96 -0
  716. data/templates/solaris-10-ga-x86/jumpstart/rules.ok +2 -0
  717. data/templates/solaris-10-ga-x86/jumpstart/sysidcfg +16 -0
  718. data/templates/solaris-10-ga-x86/postinstall.sh +90 -0
  719. data/templates/solaris-10-ga-x86/puppet.sh +4 -0
  720. data/templates/solaris-10-ga-x86/update-terminfo.sh +84 -0
  721. data/templates/ubuntu-10.04.4-server-amd64-netboot/base.sh +24 -0
  722. data/templates/ubuntu-10.04.4-server-amd64-netboot/chef.sh +2 -0
  723. data/templates/ubuntu-10.04.4-server-amd64-netboot/cleanup.sh +22 -0
  724. data/templates/ubuntu-10.04.4-server-amd64-netboot/definition.rb +44 -0
  725. data/templates/ubuntu-10.04.4-server-amd64-netboot/preseed.cfg +89 -0
  726. data/templates/ubuntu-10.04.4-server-amd64-netboot/puppet.sh +7 -0
  727. data/templates/ubuntu-10.04.4-server-amd64-netboot/ruby.sh +24 -0
  728. data/templates/ubuntu-10.04.4-server-amd64-netboot/vagrant.sh +14 -0
  729. data/templates/ubuntu-10.04.4-server-amd64-netboot/virtualbox.sh +10 -0
  730. data/templates/ubuntu-10.04.4-server-amd64-netboot/vmfusion.sh +7 -0
  731. data/templates/ubuntu-10.04.4-server-amd64-netboot/zerodisk.sh +3 -0
  732. data/templates/ubuntu-10.04.4-server-amd64/base.sh +24 -0
  733. data/templates/ubuntu-10.04.4-server-amd64/chef.sh +2 -0
  734. data/templates/ubuntu-10.04.4-server-amd64/cleanup.sh +22 -0
  735. data/templates/ubuntu-10.04.4-server-amd64/definition.rb +29 -8
  736. data/templates/ubuntu-10.04.4-server-amd64/puppet.sh +7 -0
  737. data/templates/ubuntu-10.04.4-server-amd64/ruby.sh +24 -0
  738. data/templates/ubuntu-10.04.4-server-amd64/vagrant.sh +14 -0
  739. data/templates/ubuntu-10.04.4-server-amd64/virtualbox.sh +10 -0
  740. data/templates/ubuntu-10.04.4-server-amd64/vmfusion.sh +7 -0
  741. data/templates/ubuntu-10.04.4-server-amd64/zerodisk.sh +3 -0
  742. data/templates/ubuntu-10.04.4-server-i386-netboot/base.sh +24 -0
  743. data/templates/ubuntu-10.04.4-server-i386-netboot/chef.sh +2 -0
  744. data/templates/ubuntu-10.04.4-server-i386-netboot/cleanup.sh +22 -0
  745. data/templates/ubuntu-10.04.4-server-i386-netboot/definition.rb +44 -0
  746. data/templates/ubuntu-10.04.4-server-i386-netboot/preseed.cfg +89 -0
  747. data/templates/ubuntu-10.04.4-server-i386-netboot/puppet.sh +7 -0
  748. data/templates/ubuntu-10.04.4-server-i386-netboot/ruby.sh +24 -0
  749. data/templates/ubuntu-10.04.4-server-i386-netboot/vagrant.sh +14 -0
  750. data/templates/ubuntu-10.04.4-server-i386-netboot/virtualbox.sh +10 -0
  751. data/templates/ubuntu-10.04.4-server-i386-netboot/vmfusion.sh +7 -0
  752. data/templates/ubuntu-10.04.4-server-i386-netboot/zerodisk.sh +3 -0
  753. data/templates/ubuntu-10.04.4-server-i386/base.sh +24 -0
  754. data/templates/ubuntu-10.04.4-server-i386/chef.sh +2 -0
  755. data/templates/ubuntu-10.04.4-server-i386/cleanup.sh +22 -0
  756. data/templates/ubuntu-10.04.4-server-i386/definition.rb +28 -7
  757. data/templates/ubuntu-10.04.4-server-i386/puppet.sh +7 -0
  758. data/templates/ubuntu-10.04.4-server-i386/ruby.sh +24 -0
  759. data/templates/ubuntu-10.04.4-server-i386/vagrant.sh +14 -0
  760. data/templates/ubuntu-10.04.4-server-i386/virtualbox.sh +10 -0
  761. data/templates/ubuntu-10.04.4-server-i386/vmfusion.sh +7 -0
  762. data/templates/ubuntu-10.04.4-server-i386/zerodisk.sh +3 -0
  763. data/templates/ubuntu-10.10-server-amd64/base.sh +5 -2
  764. data/templates/ubuntu-10.10-server-amd64/cleanup.sh +1 -1
  765. data/templates/ubuntu-10.10-server-amd64/definition.rb +61 -35
  766. data/templates/ubuntu-10.10-server-amd64/preseed.cfg +1 -1
  767. data/templates/ubuntu-10.10-server-amd64/ruby.sh +6 -6
  768. data/templates/ubuntu-10.10-server-amd64/vagrant.sh +1 -1
  769. data/templates/ubuntu-11.04-server-amd64/definition.rb +1 -1
  770. data/templates/ubuntu-12.04.1-server-amd64-packages/postinstall.sh +2 -2
  771. data/templates/ubuntu-12.04.1-server-amd64/postinstall.sh +2 -2
  772. data/templates/ubuntu-12.04.1-server-i386-packages/postinstall.sh +1 -1
  773. data/templates/ubuntu-12.04.1-server-i386/postinstall.sh +1 -1
  774. data/templates/ubuntu-12.04.2-desktop-amd64/definition.rb +36 -0
  775. data/templates/ubuntu-12.04.2-desktop-amd64/postinstall.sh +106 -0
  776. data/templates/ubuntu-12.04.2-desktop-amd64/preseed.cfg +86 -0
  777. data/templates/ubuntu-12.04.2-server-amd64-netboot/definition.rb +36 -0
  778. data/templates/{ubuntu-10.04.4-server-i386 → ubuntu-12.04.2-server-amd64-netboot}/postinstall.sh +25 -21
  779. data/templates/ubuntu-12.04.2-server-amd64-netboot/preseed.cfg +99 -0
  780. data/templates/ubuntu-12.04.2-server-amd64-packages/definition.rb +35 -0
  781. data/templates/{ubuntu-12.10-server-i386-packages → ubuntu-12.04.2-server-amd64-packages}/postinstall.sh +14 -11
  782. data/templates/ubuntu-12.04.2-server-amd64-packages/preseed.cfg +87 -0
  783. data/templates/ubuntu-12.04.2-server-amd64/base.sh +20 -0
  784. data/templates/ubuntu-12.04.2-server-amd64/chef.sh +2 -0
  785. data/templates/ubuntu-12.04.2-server-amd64/cleanup.sh +23 -0
  786. data/templates/ubuntu-12.04.2-server-amd64/definition.rb +45 -0
  787. data/templates/ubuntu-12.04.2-server-amd64/preseed.cfg +87 -0
  788. data/templates/ubuntu-12.04.2-server-amd64/puppet.sh +7 -0
  789. data/templates/ubuntu-12.04.2-server-amd64/ruby.sh +26 -0
  790. data/templates/ubuntu-12.04.2-server-amd64/vagrant.sh +12 -0
  791. data/templates/ubuntu-12.04.2-server-amd64/virtualbox.sh +18 -0
  792. data/templates/ubuntu-12.04.2-server-amd64/vmfusion.sh +7 -0
  793. data/templates/ubuntu-12.04.2-server-amd64/vmtools.sh +33 -0
  794. data/templates/ubuntu-12.04.2-server-amd64/zerodisk.sh +3 -0
  795. data/templates/ubuntu-12.04.2-server-i386-netboot/definition.rb +36 -0
  796. data/templates/{ubuntu-10.04.4-server-amd64 → ubuntu-12.04.2-server-i386-netboot}/postinstall.sh +25 -30
  797. data/templates/ubuntu-12.04.2-server-i386-netboot/preseed.cfg +99 -0
  798. data/templates/ubuntu-12.04.2-server-i386-packages/definition.rb +35 -0
  799. data/templates/{ubuntu-12.10-server-amd64-packages → ubuntu-12.04.2-server-i386-packages}/postinstall.sh +5 -5
  800. data/templates/ubuntu-12.04.2-server-i386-packages/preseed.cfg +87 -0
  801. data/templates/ubuntu-12.04.2-server-i386/definition.rb +35 -0
  802. data/templates/ubuntu-12.04.2-server-i386/postinstall.sh +96 -0
  803. data/templates/ubuntu-12.04.2-server-i386/preseed.cfg +87 -0
  804. data/templates/ubuntu-12.04.3-desktop-i386/README.md +51 -0
  805. data/templates/ubuntu-12.04.3-desktop-i386/apt.sh +8 -0
  806. data/templates/ubuntu-12.04.3-desktop-i386/build_time.sh +1 -0
  807. data/templates/ubuntu-12.04.3-desktop-i386/chef.sh +3 -0
  808. data/templates/ubuntu-12.04.3-desktop-i386/cleanup.sh +16 -0
  809. data/templates/ubuntu-12.04.3-desktop-i386/definition.rb +57 -0
  810. data/templates/ubuntu-12.04.3-desktop-i386/preseed.cfg +106 -0
  811. data/templates/ubuntu-12.04.3-desktop-i386/puppet.sh +4 -0
  812. data/templates/ubuntu-12.04.3-desktop-i386/ruby.sh +25 -0
  813. data/templates/ubuntu-12.04.3-desktop-i386/sudo.sh +5 -0
  814. data/templates/ubuntu-12.04.3-desktop-i386/vagrant.sh +6 -0
  815. data/templates/ubuntu-12.04.3-desktop-i386/vbox.sh +18 -0
  816. data/templates/ubuntu-12.04.3-server-amd64/base.sh +20 -0
  817. data/templates/ubuntu-12.04.3-server-amd64/chef.sh +2 -0
  818. data/templates/ubuntu-12.04.3-server-amd64/cleanup.sh +23 -0
  819. data/templates/ubuntu-12.04.3-server-amd64/definition.rb +45 -0
  820. data/templates/ubuntu-12.04.3-server-amd64/preseed.cfg +87 -0
  821. data/templates/ubuntu-12.04.3-server-amd64/puppet.sh +7 -0
  822. data/templates/ubuntu-12.04.3-server-amd64/ruby.sh +26 -0
  823. data/templates/ubuntu-12.04.3-server-amd64/vagrant.sh +12 -0
  824. data/templates/ubuntu-12.04.3-server-amd64/virtualbox.sh +18 -0
  825. data/templates/ubuntu-12.04.3-server-amd64/vmfusion.sh +7 -0
  826. data/templates/ubuntu-12.04.3-server-amd64/vmtools.sh +33 -0
  827. data/templates/ubuntu-12.04.3-server-amd64/zerodisk.sh +3 -0
  828. data/templates/ubuntu-12.04.3-server-i386/apt.sh +7 -0
  829. data/templates/ubuntu-12.04.3-server-i386/build_time.sh +1 -0
  830. data/templates/ubuntu-12.04.3-server-i386/chef.sh +3 -0
  831. data/templates/ubuntu-12.04.3-server-i386/cleanup.sh +16 -0
  832. data/templates/ubuntu-12.04.3-server-i386/definition.rb +45 -0
  833. data/templates/ubuntu-12.04.3-server-i386/preseed.cfg +61 -0
  834. data/templates/ubuntu-12.04.3-server-i386/puppet.sh +4 -0
  835. data/templates/ubuntu-12.04.3-server-i386/ruby.sh +25 -0
  836. data/templates/ubuntu-12.04.3-server-i386/sudo.sh +5 -0
  837. data/templates/ubuntu-12.04.3-server-i386/vagrant.sh +6 -0
  838. data/templates/ubuntu-12.04.3-server-i386/vbox.sh +18 -0
  839. data/templates/ubuntu-12.10-desktop-amd64/definition.rb +40 -0
  840. data/templates/ubuntu-12.10-desktop-amd64/postinstall.sh +106 -0
  841. data/templates/ubuntu-12.10-desktop-amd64/preseed.cfg +86 -0
  842. data/templates/ubuntu-12.10-server-amd64-packages/base.sh +20 -0
  843. data/templates/ubuntu-12.10-server-amd64-packages/chef.sh +49 -0
  844. data/templates/ubuntu-12.10-server-amd64-packages/cleanup.sh +25 -0
  845. data/templates/ubuntu-12.10-server-amd64-packages/definition.rb +11 -2
  846. data/templates/ubuntu-12.10-server-amd64-packages/puppet.sh +15 -0
  847. data/templates/ubuntu-12.10-server-amd64-packages/ruby.sh +7 -0
  848. data/templates/ubuntu-12.10-server-amd64-packages/vagrant.sh +27 -0
  849. data/templates/ubuntu-12.10-server-amd64-packages/virtualbox.sh +15 -0
  850. data/templates/ubuntu-12.10-server-amd64-packages/zerodisk.sh +11 -0
  851. data/templates/ubuntu-12.10-server-amd64/postinstall.sh +1 -1
  852. data/templates/ubuntu-12.10-server-i386-packages/base.sh +20 -0
  853. data/templates/ubuntu-12.10-server-i386-packages/chef.sh +49 -0
  854. data/templates/ubuntu-12.10-server-i386-packages/cleanup.sh +25 -0
  855. data/templates/ubuntu-12.10-server-i386-packages/definition.rb +11 -2
  856. data/templates/ubuntu-12.10-server-i386-packages/puppet.sh +15 -0
  857. data/templates/ubuntu-12.10-server-i386-packages/ruby.sh +7 -0
  858. data/templates/ubuntu-12.10-server-i386-packages/vagrant.sh +27 -0
  859. data/templates/ubuntu-12.10-server-i386-packages/virtualbox.sh +15 -0
  860. data/templates/ubuntu-12.10-server-i386-packages/zerodisk.sh +11 -0
  861. data/templates/ubuntu-12.10-server-i386/postinstall.sh +1 -1
  862. data/templates/ubuntu-13.04-server-amd64-rvm/apt.sh +8 -0
  863. data/templates/ubuntu-13.04-server-amd64-rvm/build_time.sh +1 -0
  864. data/templates/ubuntu-13.04-server-amd64-rvm/chef.sh +1 -0
  865. data/templates/ubuntu-13.04-server-amd64-rvm/cleanup.sh +16 -0
  866. data/templates/ubuntu-13.04-server-amd64-rvm/definition.rb +45 -0
  867. data/templates/ubuntu-13.04-server-amd64-rvm/preseed.cfg +61 -0
  868. data/templates/ubuntu-13.04-server-amd64-rvm/puppet.sh +1 -0
  869. data/templates/ubuntu-13.04-server-amd64-rvm/rvm.sh +7 -0
  870. data/templates/ubuntu-13.04-server-amd64-rvm/sudo.sh +5 -0
  871. data/templates/ubuntu-13.04-server-amd64-rvm/vagrant.sh +6 -0
  872. data/templates/ubuntu-13.04-server-amd64-rvm/vbox.sh +18 -0
  873. data/templates/ubuntu-13.04-server-amd64/apt.sh +7 -0
  874. data/templates/ubuntu-13.04-server-amd64/build_time.sh +1 -0
  875. data/templates/ubuntu-13.04-server-amd64/chef.sh +3 -0
  876. data/templates/ubuntu-13.04-server-amd64/cleanup.sh +16 -0
  877. data/templates/ubuntu-13.04-server-amd64/definition.rb +45 -0
  878. data/templates/ubuntu-13.04-server-amd64/preseed.cfg +61 -0
  879. data/templates/ubuntu-13.04-server-amd64/puppet.sh +4 -0
  880. data/templates/ubuntu-13.04-server-amd64/ruby.sh +25 -0
  881. data/templates/ubuntu-13.04-server-amd64/sudo.sh +5 -0
  882. data/templates/ubuntu-13.04-server-amd64/vagrant.sh +6 -0
  883. data/templates/ubuntu-13.04-server-amd64/vbox.sh +18 -0
  884. data/templates/ubuntu-8.04.4-server-amd64/preseed.cfg +7 -7
  885. data/templates/ubuntu-8.04.4-server-i386/preseed.cfg +7 -7
  886. data/templates/windows-2008R1-serverstandard-amd64/Autounattend.xml +1 -0
  887. data/templates/windows-2008R1-serverweb-amd64/Autounattend.xml +1 -0
  888. data/templates/windows-2008R1-serverweb-amd64/install-cygwin-sshd.bat +1 -1
  889. data/templates/windows-2008R1-serverweb-i386/Autounattend.xml +6 -2
  890. data/templates/windows-2008R1-serverweb-i386/install-cygwin-sshd.bat +1 -1
  891. data/templates/windows-2008R1-serverwebcore-amd64/Autounattend.xml +1 -0
  892. data/templates/windows-2008R2-amd64/Autounattend.xml +4 -3
  893. data/templates/windows-2008R2-amd64/win7/Autounattend.xml +5 -3
  894. data/templates/windows-2008R2-serverstandard-amd64-winrm/Autounattend.xml +17 -12
  895. data/templates/windows-2008R2-serverstandard-amd64-winrm/install-vbox.bat +0 -2
  896. data/templates/windows-2008R2-serverstandard-amd64/Autounattend.xml +4 -5
  897. data/templates/windows-2008R2-serverstandard-amd64/definition.rb +3 -3
  898. data/templates/windows-2008R2-serverstandard-amd64/install-cygwin-sshd.bat +3 -2
  899. data/templates/windows-2008R2-serverweb-amd64/Autounattend.xml +4 -1
  900. data/templates/windows-2008R2-serverweb-amd64/install-cygwin-sshd.bat +1 -1
  901. data/templates/windows-2012-serverstandard-amd64/Autounattend.xml +235 -0
  902. data/templates/windows-2012-serverstandard-amd64/README.md +68 -0
  903. data/templates/windows-2012-serverstandard-amd64/definition.rb +29 -0
  904. data/templates/windows-2012-serverstandard-amd64/install-chef.bat +37 -0
  905. data/templates/windows-2012-serverstandard-amd64/install-puppet.bat +37 -0
  906. data/templates/windows-2012-serverstandard-amd64/install-vbox.bat +4 -0
  907. data/templates/windows-2012-serverstandard-amd64/oracle-cert.cer +0 -0
  908. data/templates/windows-2012R2-serverdatacenter-amd64/Autounattend.xml +235 -0
  909. data/templates/windows-2012R2-serverdatacenter-amd64/README.md +68 -0
  910. data/templates/windows-2012R2-serverdatacenter-amd64/definition.rb +33 -0
  911. data/templates/windows-2012R2-serverdatacenter-amd64/install-chef.bat +37 -0
  912. data/templates/windows-2012R2-serverdatacenter-amd64/install-puppet.bat +37 -0
  913. data/templates/windows-2012R2-serverdatacenter-amd64/install-vbox.bat +4 -0
  914. data/templates/windows-2012R2-serverdatacenter-amd64/oracle-cert.cer +0 -0
  915. data/templates/windows-7-enterprise-amd64-winrm/Autounattend.xml +17 -10
  916. data/templates/windows-7-enterprise-amd64/Autounattend.xml +4 -3
  917. data/templates/windows-7-enterprise-amd64/install-cygwin-sshd.bat +1 -1
  918. data/templates/windows-7-enterprise-i386/Autounattend.xml +4 -3
  919. data/templates/windows-7-enterprise-i386/install-cygwin-sshd.bat +1 -1
  920. data/templates/windows-7-premium-amd64/Autounattend.xml +4 -4
  921. data/templates/windows-7-professional-amd64/Autounattend.xml +4 -4
  922. data/templates/windows-7-professional-amd64/install-cygwin-sshd.bat +1 -1
  923. data/templates/windows-7-professional-amd64/postinstall.sh +2 -2
  924. data/templates/windows-7-ultimate-amd64/Autounattend.xml +4 -4
  925. data/templates/windows-7-ultimate-amd64/install-cygwin-sshd.bat +1 -1
  926. data/templates/windows-7sp1-ultimate-amd64/Autounattend.xml +4 -3
  927. data/templates/windows-7sp1-ultimate-amd64/install-cygwin-sshd.bat +2 -2
  928. data/test/build_realtest.rb +15 -5
  929. data/test/environment_test.rb +2 -1
  930. data/veewee.gemspec +6 -4
  931. metadata +689 -87
  932. data/doc/README-changes.txt +0 -20
  933. data/doc/TODO +0 -60
  934. data/doc/definition.md +0 -83
  935. data/doc/install.md +0 -16
  936. data/doc/running.md +0 -83
  937. data/doc/template.md +0 -153
  938. data/lib/veewee/provider/vmfusion/box/export_ova.rb +0 -49
  939. data/templates/Debian-5.0.10-amd64-netboot/postinstall.sh +0 -60
  940. data/templates/Debian-5.0.10-i386-netboot/postinstall.sh +0 -60
  941. data/templates/Debian-5.0.8-amd64-netboot/postinstall.sh +0 -60
  942. data/templates/Debian-5.0.8-i386-netboot/postinstall.sh +0 -60
  943. data/templates/Debian-7.0-b4-amd64-netboot/puppet.sh +0 -2
  944. data/templates/Debian-7.0-b4-i386-netboot/puppet.sh +0 -2
  945. data/templates/Fedora-18-i386/postinstall.sh +0 -40
  946. data/templates/Fedora-18-x86_64/postinstall.sh +0 -43
  947. data/templates/archlinux-i386-netboot/aif.cfg +0 -28
  948. data/templates/archlinux-i386-netboot/definition.rb +0 -26
  949. data/templates/archlinux-i386-netboot/postinstall.sh +0 -75
  950. data/templates/archlinux-i386-netboot/postinstall2.sh +0 -30
  951. data/templates/archlinux-x86_64-netboot/aif.cfg +0 -28
  952. data/templates/archlinux-x86_64-netboot/definition.rb +0 -26
  953. data/templates/archlinux-x86_64-netboot/postinstall.sh +0 -75
  954. data/templates/archlinux-x86_64-netboot/postinstall2.sh +0 -30
  955. data/templates/archlinux-x86_64/aif.cfg +0 -33
  956. data/templates/archlinux-x86_64/postinstall.sh +0 -90
  957. data/templates/archlinux-x86_64/postinstall2.sh +0 -38
  958. data/templates/gentoo-latest-i386-experimental/definition.rb +0 -45
  959. data/templates/gentoo-latest-i386-experimental/postinstall.sh +0 -184
  960. data/templates/gentoo-latest-x86_64-experimental/definition.rb +0 -45
  961. data/templates/gentoo-latest-x86_64-experimental/postinstall.sh +0 -214
  962. data/validation/features/steps/ssh_steps.old +0 -170
  963. data/validation/features/steps/veewee_steps.rb +0 -27
  964. data/validation/support/env.rb +0 -1
  965. data/validation/veewee-windows.feature +0 -34
  966. data/validation/veewee.feature +0 -45
@@ -15,11 +15,15 @@ module Veewee
15
15
  end
16
16
 
17
17
  def exists_volume?
18
- @connection.list_volumes.find { |v| v[:name] == "#{name}.img" }
18
+ !@connection.list_volumes(:name => @volume_name).first.empty?
19
19
  end
20
20
 
21
21
  def exists_vm?
22
- @connection.list_domains.find { |d| d[:name] == name }
22
+ begin
23
+ @connection.list_domains(:name => name)
24
+ rescue Libvirt::RetrieveError
25
+ false
26
+ end
23
27
  end
24
28
 
25
29
  end # End Module
@@ -12,38 +12,43 @@ module Veewee
12
12
  Fog.credentials[:libvirt_uri] ||= "qemu:///system"
13
13
 
14
14
  env.logger.info "Setting libvirt IP Command if not already defined in .fog config file"
15
- Fog.credentials[:libvirt_ip_command] ||= "arp -an |grep $mac|cut -d '(' -f 2 | cut -d ')' -f 1"
15
+ Fog.credentials[:libvirt_ip_command] ||= "arp -an |grep -i $mac|cut -d '(' -f 2 | cut -d ')' -f 1"
16
16
 
17
+ env.logger.info "Opening a libvirt connection using fog.io"
17
18
  begin
18
- env.logger.info "Opening a libvirt connection using fog.io"
19
- conn = Fog::Compute[:libvirt]
20
- env.logger.info "Libvirt connection established"
21
19
 
22
- env.logger.debug "Found capabilities:"
23
- env.logger.debug "#{conn.client.capabilities}"
24
-
25
- env.logger.info "Checking available storagepools"
26
- conn.pools.any? or raise Veewee::Error, "You need at least one (active) storage pool defined in #{Fog.credentials[:libvirt_uri]}."
20
+ unless gems_available?(["ruby-libvirt"])
21
+ raise Veewee::Error, "Please install ruby-libvirt gem first"
22
+ end
23
+ end
27
24
 
28
- env.logger.info "Checking available networks"
29
- conn.networks.any? or raise Veewee::Error,"You need at least one (active) network defined. This needs to be available if you connect to qemu:///system"
25
+ begin
30
26
 
31
- # http://www.libvirt.org/html/libvirt-libvirt.html#virGetVersion
32
- # format major * 1,000,000 + minor * 1,000 + release
33
- env.logger.info "Checking libvirt version"
34
- if conn.client.libversion < 8003
35
- raise Veewee::Error, "You need at least libvirt version 0.8.3 or higher "
36
- end
27
+ env.logger.info "Opening a libvirt connection using fog.io"
28
+ conn = Fog::Compute[:libvirt]
37
29
  rescue Exception => ex
38
30
  raise Veewee::Error, "There was a problem opening a connection to libvirt: #{ex}"
39
31
  end
32
+ env.logger.info "Libvirt connection established"
40
33
 
41
- unless self.shell_exec("arp").status == 0
42
- raise Veewee::Error, "Could not execute the arp command. This is required to find the IP address of the VM"
43
- end
34
+ env.logger.debug "Found capabilities:"
35
+ env.logger.debug "#{conn.client.capabilities}"
44
36
 
45
- end
37
+ env.logger.info "Checking libvirt version"
38
+ # http://www.libvirt.org/html/libvirt-libvirt.html#virGetVersion
39
+ # format major * 1,000,000 + minor * 1,000 + release
40
+ conn.client.libversion > 8003 or raise Veewee::Error, "You need at least libvirt version 0.8.3 or higher "
41
+
42
+ env.logger.info "Checking available networks"
43
+ conn.networks.any? or raise Veewee::Error, "You need at least one (active) network defined in #{Fog.credentials[:libvirt_uri]}."
46
44
 
45
+ env.logger.info "Checking available storagepools"
46
+ conn.pools.any? or raise Veewee::Error, "You need at least one (active) storage pool defined in #{Fog.credentials[:libvirt_uri]}."
47
+
48
+ env.logger.info "Checking availability of the arp utility"
49
+ shell_exec("arp").status.zero? or raise Veewee::Error, "Could not execute the arp command. This is required to find the IP address of the VM"
50
+
51
+ end
47
52
 
48
53
  def build(definition_name, box_name, options)
49
54
 
@@ -0,0 +1,45 @@
1
+ # -*- mode: ruby -*-
2
+ # vi: set ft=ruby :
3
+
4
+ Vagrant.configure("2") do |config|
5
+
6
+ # Example configuration of new VM..
7
+ #
8
+ #config.vm.define :test_vm do |test_vm|
9
+ # Box name
10
+ #test_vm.vm.box = "centos64"
11
+
12
+ # Interfaces for VM
13
+ #
14
+ # Hostonly network is not supported in this version of provider. Bridged
15
+ # interface with network id specified can be created.
16
+ #test_vm.vm.network :bridged, :bridge => "default", :adapter => 1
17
+ #end
18
+
19
+ # Options for libvirt vagrant provider.
20
+ config.vm.provider :libvirt do |libvirt|
21
+
22
+ # A hypervisor name to access. Different drivers can be specified, but
23
+ # this version of provider creates KVM machines only. Some examples of
24
+ # drivers are qemu (KVM/qemu), xen (Xen hypervisor), lxc (Linux Containers),
25
+ # esx (VMware ESX), vmwarews (VMware Workstation) and more. Refer to
26
+ # documentation for available drivers (http://libvirt.org/drivers.html).
27
+ #libvirt.driver = "qemu"
28
+
29
+ # The name of the server, where libvirtd is running.
30
+ #libvirt.host = "localhost"
31
+
32
+ # If use ssh tunnel to connect to Libvirt.
33
+ #libvirt.connect_via_ssh = false
34
+
35
+ # The username and password to access Libvirt. Password is not used when
36
+ # connecting via ssh.
37
+ #libvirt.username = "root"
38
+ #libvirt.password = "secret"
39
+
40
+ # Libvirt storage pool name, where box image and instance snapshots will
41
+ # be stored.
42
+ #libvirt.storage_pool_name = "default"
43
+ end
44
+ end
45
+
@@ -8,6 +8,7 @@ require 'veewee/provider/parallels/box/helper/console_type'
8
8
  require 'veewee/provider/parallels/box/helper/buildinfo'
9
9
 
10
10
  require 'veewee/provider/parallels/box/build'
11
+ require 'veewee/provider/parallels/box/export'
11
12
  require 'veewee/provider/parallels/box/up'
12
13
  require 'veewee/provider/parallels/box/create'
13
14
  require 'veewee/provider/parallels/box/poweroff'
@@ -0,0 +1,184 @@
1
+ require 'pathname'
2
+ require 'erb'
3
+ module Veewee
4
+ module Provider
5
+ module Parallels
6
+ module BoxCommand
7
+
8
+ class ErbBinding < OpenStruct
9
+ def get_binding
10
+ return binding()
11
+ end
12
+ end
13
+
14
+ def export_vagrant(options)
15
+ # For now, we just assume prlctl is in the path. If not...it'll fail.
16
+ @prlcmd = "prlctl"
17
+ @prldisktool = "prl_disk_tool"
18
+
19
+ # Check if box already exists
20
+ unless self.exists?
21
+ ui.info "#{name} is not found, maybe you need to build it first?"
22
+ exit
23
+ end
24
+
25
+ if File.exists?("#{name}.box")
26
+ if options["force"]
27
+ env.logger.debug("#{name}.box exists, but --force was provided")
28
+ env.logger.debug("removing #{name}.box first")
29
+ FileUtils.rm("#{name}.box")
30
+ env.logger.debug("#{name}.box removed")
31
+ else
32
+ raise Veewee::Error, "export file #{name}.box already exists. Use --force option to overwrite."
33
+ end
34
+ end
35
+
36
+
37
+ # We need to shutdown first
38
+ if self.running?
39
+ ui.info "Vagrant requires the box to be shutdown, before it can export"
40
+ ui.info "Sudo also needs to work for user #{definition.ssh_user}"
41
+ ui.info "Performing a clean shutdown now."
42
+
43
+ self.halt
44
+
45
+ #Wait for state poweroff
46
+ while (self.running?) do
47
+ ui.info ".",{:new_line => false}
48
+ sleep 1
49
+ end
50
+ ui.info ""
51
+ ui.info "Machine #{name} is powered off cleanly"
52
+ end
53
+
54
+ #Vagrant requires a relative path for output of boxes
55
+
56
+ #4.0.x. not using boxes as a subdir
57
+ boxdir=Pathname.new(Dir.pwd)
58
+
59
+ full_path=File.join(boxdir,name+".box")
60
+ path1=Pathname.new(full_path)
61
+ path2=Pathname.new(Dir.pwd)
62
+ box_path=File.expand_path(path1.relative_path_from(path2).to_s)
63
+
64
+ if File.exists?("#{box_path}")
65
+ raise Veewee::Error, "box #{name}.box already exists"
66
+ end
67
+
68
+ # VMWare Fusion does this to the real machine, so we will too.
69
+ optimize_disk
70
+
71
+ # Create temp directory
72
+ current_dir = FileUtils.pwd
73
+ ui.info "Creating a temporary directory for export"
74
+ tmp_dir = Dir.mktmpdir
75
+ env.logger.debug("Create temporary directory for export #{tmp_dir}")
76
+
77
+ begin
78
+
79
+ ui.info "Adding additional files"
80
+
81
+ # Handling the Vagrantfile
82
+ if options["vagrantfile"].to_s == ""
83
+
84
+ # Fetching mac address
85
+
86
+ data = {
87
+ :macaddress => get_mac_address
88
+ }
89
+
90
+ # Prepare the vagrant erb
91
+ vars = ErbBinding.new(data)
92
+ template_path = File.join(File.dirname(__FILE__),'..','..','..','templates',"Vagrantfile.erb")
93
+ template = File.open(template_path).readlines.join
94
+ erb = ERB.new(template)
95
+ vars_binding = vars.send(:get_binding)
96
+ result = erb.result(vars_binding)
97
+ ui.info("Creating Vagrantfile")
98
+ vagrant_path = File.join(tmp_dir,'Vagrantfile')
99
+ env.logger.debug("Path: #{vagrant_path}")
100
+ env.logger.debug(result)
101
+ File.open(vagrant_path,'w') {|f| f.write(result) }
102
+ else
103
+ f = options["vagrantfile"]
104
+ env.logger.debug("Including vagrantfile: #{f}")
105
+ FileUtils.cp(f,File.join(tmp_dir,"Vagrantfile"))
106
+ end
107
+
108
+ #Inject a metadata.json file
109
+ ui.info("Adding metadata.json file for Parallels Desktop provider")
110
+ File.open(File.join(tmp_dir, 'metadata.json'), 'w') {|f| f.write(template_metadatafile()) }
111
+
112
+ ui.info "Exporting the box"
113
+ tmp_dest = File.join(tmp_dir, "box.pvm")
114
+
115
+ clone_command = "#{@prlcmd} clone #{name} --name #{name}-veewee --template --location #{tmp_dir}"
116
+ shell_exec clone_command
117
+ env.logger.debug("Clone #{name} to #{name}-veewee, location #{tmp_dir}")
118
+
119
+ # Previous command causes the VM to get registered, so unregister it to keep user's VM list clean
120
+ unregister_command = "#{@prlcmd} unregister #{name}-veewee"
121
+ shell_exec unregister_command
122
+ env.logger.debug "Unregister #{name}-veewee after clone"
123
+
124
+ FileUtils.move File.join(tmp_dir, "#{name}-veewee.pvm"), tmp_dest
125
+ env.logger.debug("Rename Parallels Desktop-created file to what we expect")
126
+
127
+ ui.info "Packaging the box"
128
+ FileUtils.cd(tmp_dir)
129
+ command_box_path = box_path
130
+ # Gzip, for extra smallness
131
+ command = "tar -cvzf '#{command_box_path}' ."
132
+ env.logger.debug(command)
133
+ shell_exec (command)
134
+
135
+ rescue Errno::ENOENT => ex
136
+ raise Veewee::Error, "#{ex}"
137
+ rescue Error => ex
138
+ raise Veewee::Error, "Packaging of the box failed:\n+#{ex}"
139
+ ensure
140
+ # Remove temporary directory
141
+ ui.info "Cleaning up temporary directory"
142
+ env.logger.debug("Removing temporary dir #{tmp_dir}")
143
+ FileUtils.rm_rf(tmp_dir)
144
+
145
+ FileUtils.cd(current_dir)
146
+ end
147
+ ui.info ""
148
+
149
+ ui.info "To import it into vagrant type:"
150
+ ui.info "vagrant box add '#{name}' '#{box_path}'"
151
+ ui.info ""
152
+ ui.info "To use it:"
153
+ ui.info "vagrant init '#{name}'"
154
+ ui.info "vagrant up --provider=parallels"
155
+ ui.info "vagrant ssh"
156
+ end
157
+
158
+ # Inspired by vagrant-parallels
159
+ def read_settings
160
+ command = "#{@prlcmd} list --info --json \"#{self.name}\""
161
+ r = shell_exec(command).stdout
162
+ JSON.parse (r.gsub("/\s+/", "").gsub(/^(INFO)?\[/, '').gsub(/\]$/, ''))
163
+ end
164
+
165
+ def get_mac_address
166
+ mac = read_settings.fetch("Hardware").fetch("net0").fetch("mac")
167
+ env.logger.debug("mac address: #{mac}")
168
+ return mac
169
+ end
170
+
171
+ def template_metadatafile
172
+ %Q({"provider": "parallels"}\n)
173
+ end
174
+
175
+ def optimize_disk
176
+ env.ui.info "Optimizing Disk"
177
+ path_to_hdd = File.join read_settings.fetch("Home"), "harddisk.hdd"
178
+ optimize_command = "#{@prldisktool} compact --buildmap --hdd #{path_to_hdd}"
179
+ shell_exec optimize_command
180
+ end
181
+ end #Module
182
+ end #Module
183
+ end #Module
184
+ end #Module
@@ -15,12 +15,14 @@ module Veewee
15
15
  def guest_iso_path
16
16
  # So we begin by transferring the ISO file of the vmware tools
17
17
 
18
+ parallels_base_path = "/Applications/Parallels Desktop.app/Contents/Resources/Tools"
19
+
18
20
  # Set default
19
- iso_image="/Library/Parallels/Tools/prl-tools-lin.iso"
20
- iso_image="/Library/Parallels/Tools/prl-tools-mac.iso" if definition.os_type_id=~/^Darwin/
21
- iso_image="/Library/Parallels/Tools/prl-tools-win.iso" if definition.os_type_id=~/^Win/
22
- iso_image="/Library/Parallels/Tools/prl-tools-other.iso" if definition.os_type_id=~/^Free/
23
- iso_image="/Library/Parallels/Tools/prl-tools-other.iso" if definition.os_type_id=~/^Solaris/
21
+ iso_image="#{parallels_base_path}/prl-tools-lin.iso"
22
+ iso_image="#{parallels_base_path}/prl-tools-mac.iso" if definition.os_type_id=~/^Darwin/
23
+ iso_image="#{parallels_base_path}/prl-tools-win.iso" if definition.os_type_id=~/^Win/
24
+ iso_image="#{parallels_base_path}/prl-tools-other.iso" if definition.os_type_id=~/^Free/
25
+ iso_image="#{parallels_base_path}/prl-tools-other.iso" if definition.os_type_id=~/^Solaris/
24
26
  return iso_image
25
27
 
26
28
  end
@@ -47,9 +47,10 @@ module Veewee
47
47
  def shift(sequence)
48
48
  seq=Array.new
49
49
  seq << press_key('SHIFT_LEFT')
50
- sequence.each do |s|
51
- seq << s
52
- end
50
+
51
+ # We never apply SHIFT_LEFT to more than one logical character at a
52
+ # time
53
+ seq << sequence
53
54
  return seq
54
55
  end
55
56
 
@@ -138,8 +139,12 @@ module Veewee
138
139
  if thestring.start_with?(key)
139
140
  #take thestring
140
141
  #check if it starts with a special key + pop special string
141
- special[key].each do |c|
142
- keycodes.concat("#{c['code']} ")
142
+ if key=="<Wait>"
143
+ sleep 1
144
+ else
145
+ special[key].each do |c|
146
+ keycodes.concat("#{c['code']} ")
147
+ end
143
148
  end
144
149
  thestring=thestring.slice(key.length,thestring.length-key.length)
145
150
  nospecial=false;
@@ -149,8 +154,9 @@ module Veewee
149
154
  if nospecial
150
155
  code=k[thestring.slice(0,1)]
151
156
  if !code.nil?
157
+ code=[code] if code.class==String
152
158
  code.each do |c|
153
- if(c == 'SHIFT_LEFT'):
159
+ if(c == 'SHIFT_LEFT')
154
160
  keycodes.concat("#{c}\#")
155
161
  else
156
162
  keycodes.concat("#{c} ")
@@ -22,6 +22,8 @@ require 'veewee/provider/virtualbox/box/helper/buildinfo'
22
22
  require 'veewee/provider/virtualbox/box/helper/console_type'
23
23
  require 'veewee/provider/virtualbox/box/up'
24
24
 
25
+ require 'whichr'
26
+
25
27
  module Veewee
26
28
  module Provider
27
29
  module Virtualbox
@@ -30,15 +32,27 @@ module Veewee
30
32
  include ::Veewee::Provider::Virtualbox::BoxCommand
31
33
 
32
34
  def initialize(name,env)
35
+ @vboxcmd = self.class.determine_vboxcmd
36
+ super(name, env)
37
+ end
33
38
 
34
- #require 'virtualbox'
35
- @vboxcmd=determine_vboxcmd
36
- super(name,env)
39
+ def self.windows_vboxcmd
40
+ # based on Vagrant/plugins/providers/virtualbox/driver/base.rb
41
+ if OS.windows? && ENV.has_key?("VBOX_INSTALL_PATH")
42
+ ENV["VBOX_INSTALL_PATH"].split(File::PATH_SEPARATOR).each do |path|
43
+ vboxmanage = File.join(path,"VBoxManage.exe")
44
+ return "\"#{vboxmanage}\"" if File.file?(vboxmanage)
45
+ end
46
+ end
47
+ nil
48
+ end
37
49
 
50
+ def self.default_vboxcmd
51
+ "VBoxManage"
38
52
  end
39
53
 
40
- def determine_vboxcmd
41
- return "VBoxManage"
54
+ def self.determine_vboxcmd
55
+ @command ||= windows_vboxcmd || default_vboxcmd
42
56
  end
43
57
 
44
58
 
@@ -62,7 +62,7 @@ module Veewee
62
62
  end
63
63
  self.add_winrm_nat_mapping
64
64
  else
65
- guessed_port=guess_free_port(definition.ssh_host_port.to_i,definition.ssh_host_port.to_i+40).to_s
65
+ guessed_port=guess_free_ssh_port(definition.ssh_host_port.to_i,definition.ssh_host_port.to_i+40).to_s
66
66
  if guessed_port.to_s!=definition.ssh_host_port
67
67
  env.ui.warn "Changing ssh port from #{definition.ssh_host_port} to #{guessed_port}"
68
68
  definition.ssh_host_port=guessed_port.to_s
@@ -1,9 +1,16 @@
1
1
  require 'pathname'
2
+ require 'erb'
2
3
  module Veewee
3
4
  module Provider
4
5
  module Virtualbox
5
6
  module BoxCommand
6
7
 
8
+ class ErbBinding < OpenStruct
9
+ def get_binding
10
+ return binding()
11
+ end
12
+ end
13
+
7
14
  # Shellutil.execute("vagrant package --base #{vmname} --include /tmp/Vagrantfile --output /tmp/#{vmname}.box", {:progress => "on"})
8
15
 
9
16
  def export_vagrant(options)
@@ -51,24 +58,91 @@ module Veewee
51
58
  full_path=File.join(boxdir,name+".box")
52
59
  path1=Pathname.new(full_path)
53
60
  path2=Pathname.new(Dir.pwd)
54
- box_path=path1.relative_path_from(path2).to_s
61
+ box_path=File.expand_path(path1.relative_path_from(path2).to_s)
55
62
 
56
63
  if File.exists?("#{box_path}")
57
64
  raise Veewee::Error, "box #{name}.box already exists"
58
65
  end
59
66
 
60
- ui.info "Executing vagrant voodoo:"
61
- export_command="vagrant package --base '#{name}' --output '#{box_path}'"
62
- export_command += " --include #{options["include"].join(',')}" unless options["include"].empty?
63
- export_command += " --vagrantfile #{options["vagrantfile"].join(' ')}" unless options["vagrantfile"].empty?
64
- ui.info "#{export_command}"
65
- shell_exec("#{export_command}") #hmm, needs to get the gem_home set?
67
+ # Create temp directory
68
+ current_dir = FileUtils.pwd
69
+ ui.info "Creating a temporary directory for export"
70
+ tmp_dir = Dir.mktmpdir
71
+ env.logger.debug("Create temporary directory for export #{tmp_dir}")
72
+
73
+ begin
74
+
75
+ ui.info "Adding additional files"
76
+
77
+ # Handling the Vagrantfile
78
+ if options["vagrantfile"].to_s == ""
79
+
80
+ # Fetching mac address
81
+
82
+ data = {
83
+ :macaddress => get_mac_address
84
+ }
85
+
86
+ # Prepare the vagrant erb
87
+ vars = ErbBinding.new(data)
88
+ template_path = File.join(File.dirname(__FILE__),'..','..','..','templates',"Vagrantfile.erb")
89
+ template = File.open(template_path).readlines.join
90
+ erb = ERB.new(template)
91
+ vars_binding = vars.send(:get_binding)
92
+ result = erb.result(vars_binding)
93
+ ui.info("Creating Vagrantfile")
94
+ vagrant_path = File.join(tmp_dir,'Vagrantfile')
95
+ env.logger.debug("Path: #{vagrant_path}")
96
+ env.logger.debug(result)
97
+ File.open(vagrant_path,'w') {|f| f.write(result) }
98
+ else
99
+ f = options["vagrantfile"]
100
+ env.logger.debug("Including vagrantfile: #{f}")
101
+ FileUtils.cp(f,File.join(tmp_dir,"Vagrantfile"))
102
+ end
103
+
104
+ # Handling other includes
105
+ unless options["include"].nil?
106
+ options["include"].each do |f|
107
+ env.logger.debug("Including file: #{f}")
108
+ FileUtils.cp(f,File.join(tmp_dir,f))
109
+ end
110
+ end
111
+
112
+ ui.info "Exporting the box"
113
+ command = "#{@vboxcmd} export #{name} --output #{File.join(tmp_dir,'box.ovf')}"
114
+ env.logger.debug("Command: #{command}")
115
+ shell_exec(command, {:mute => false})
116
+
117
+ ui.info "Packaging the box"
118
+ FileUtils.cd(tmp_dir)
119
+ command_box_path = box_path
120
+ is_windows = (RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/)
121
+ if is_windows
122
+ command_box_path = command_box_path.gsub(/^([A-Z])\:\/(.*)$/i, '/\1/\2')
123
+ end
124
+ command = "tar -cvf '#{command_box_path}' ."
125
+ env.logger.debug(command)
126
+ shell_exec (command)
127
+
128
+ rescue Errno::ENOENT => ex
129
+ raise Veewee::Error, "#{ex}"
130
+ rescue Error => ex
131
+ raise Veewee::Error, "Packaging of the box failed:\n+#{ex}"
132
+ ensure
133
+ # Remove temporary directory
134
+ ui.info "Cleaning up temporary directory"
135
+ env.logger.debug("Removing temporary dir #{tmp_dir}")
136
+ FileUtils.rm_rf(tmp_dir)
137
+
138
+ FileUtils.cd(current_dir)
139
+ end
66
140
  ui.info ""
67
141
 
68
142
  #add_ssh_nat_mapping back!!!!
69
143
  #vagrant removes the mapping
70
144
  #we need to restore it in order to be able to login again
71
- self.add_ssh_nat_mapping
145
+ #self.add_ssh_nat_mapping
72
146
 
73
147
  ui.info "To import it into vagrant type:"
74
148
  ui.info "vagrant box add '#{name}' '#{box_path}'"
@@ -79,6 +153,14 @@ module Veewee
79
153
  ui.info "vagrant ssh"
80
154
  end
81
155
 
156
+ def get_mac_address
157
+ command = "#{@vboxcmd} showvminfo --details --machinereadable \"#{self.name}\""
158
+ shell_results = shell_exec("#{command}")
159
+ mac = shell_results.stdout.split(/\n/).grep(/^macaddress1/)[0].split('=')[1].split('"')[1]
160
+ env.logger.debug("mac address: #{mac}")
161
+ return mac
162
+ end
163
+
82
164
  end #Module
83
165
  end #Module
84
166
  end #Module