veewee 0.4.3 → 0.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. checksums.yaml +8 -8
  2. data/doc/basics.md +7 -7
  3. data/doc/customize.md +1 -2
  4. data/lib/veewee/definition.rb +2 -2
  5. data/lib/veewee/provider/core/box/build.rb +20 -22
  6. data/lib/veewee/provider/core/box/copy.rb +7 -1
  7. data/lib/veewee/provider/core/box/vnc.rb +16 -17
  8. data/lib/veewee/provider/core/box/wincp.rb +1 -2
  9. data/lib/veewee/provider/core/helper/ssh.rb +4 -0
  10. data/lib/veewee/provider/core/helper/web.rb +27 -22
  11. data/lib/veewee/provider/core/helper/winrm.rb +4 -0
  12. data/lib/veewee/provider/kvm/box.rb +0 -1
  13. data/lib/veewee/provider/kvm/box/up.rb +5 -0
  14. data/lib/veewee/provider/parallels/box.rb +0 -1
  15. data/lib/veewee/provider/vmfusion/box.rb +0 -2
  16. data/lib/veewee/version.rb +1 -1
  17. data/templates/CentOS-4.8-i386/definition.rb +1 -1
  18. data/templates/CentOS-5.10-i386-netboot/definition.rb +1 -1
  19. data/templates/CentOS-5.10-i386/definition.rb +1 -1
  20. data/templates/CentOS-5.10-x86_64-netboot/definition.rb +1 -1
  21. data/templates/CentOS-5.10-x86_64/definition.rb +1 -1
  22. data/templates/CentOS-5.5-i386-netboot/definition.rb +1 -1
  23. data/templates/CentOS-5.5-x86_64-netboot/definition.rb +1 -1
  24. data/templates/CentOS-5.6-i386-netboot/definition.rb +1 -1
  25. data/templates/CentOS-5.6-i386/definition.rb +1 -1
  26. data/templates/CentOS-5.6-x86_64-netboot-packages/definition.rb +1 -1
  27. data/templates/CentOS-5.6-x86_64-netboot/definition.rb +1 -1
  28. data/templates/CentOS-5.7-i386-netboot/definition.rb +1 -1
  29. data/templates/CentOS-5.7-x86_64-netboot/definition.rb +1 -1
  30. data/templates/CentOS-5.8-i386-netboot/definition.rb +1 -1
  31. data/templates/CentOS-5.8-i386/definition.rb +1 -1
  32. data/templates/CentOS-5.8-x86_64-netboot/definition.rb +1 -1
  33. data/templates/CentOS-5.8-x86_64-reallyminimal/definition.rb +1 -1
  34. data/templates/CentOS-5.8-x86_64/definition.rb +1 -1
  35. data/templates/CentOS-5.9-i386-netboot/definition.rb +1 -1
  36. data/templates/CentOS-5.9-i386/definition.rb +1 -1
  37. data/templates/CentOS-5.9-x86_64-netboot/definition.rb +1 -1
  38. data/templates/CentOS-5.9-x86_64/definition.rb +1 -1
  39. data/templates/CentOS-6.0-i386-netboot/definition.rb +1 -1
  40. data/templates/CentOS-6.0-i386/definition.rb +1 -1
  41. data/templates/CentOS-6.0-x86_64-minimal/definition.rb +1 -1
  42. data/templates/CentOS-6.0-x86_64-netboot/definition.rb +1 -1
  43. data/templates/CentOS-6.0-x86_64/definition.rb +1 -1
  44. data/templates/CentOS-6.1-x86_64-minimal/definition.rb +1 -1
  45. data/templates/CentOS-6.1-x86_64-netboot/definition.rb +1 -1
  46. data/templates/CentOS-6.2-i386-minimal/definition.rb +1 -1
  47. data/templates/CentOS-6.2-x86_64-minimal/definition.rb +1 -1
  48. data/templates/CentOS-6.2-x86_64-netboot/definition.rb +1 -1
  49. data/templates/CentOS-6.3-i386-minimal/definition.rb +1 -1
  50. data/templates/CentOS-6.3-x86_64-minimal/definition.rb +1 -1
  51. data/templates/CentOS-6.3-x86_64-netboot/definition.rb +1 -1
  52. data/templates/CentOS-6.3-x86_64-reallyminimal/definition.rb +1 -1
  53. data/templates/CentOS-6.4-i386-minimal/definition.rb +1 -1
  54. data/templates/CentOS-6.4-i386-netboot/definition.rb +1 -1
  55. data/templates/CentOS-6.4-x86_64-minimal/definition.rb +1 -1
  56. data/templates/CentOS-6.4-x86_64-netboot/definition.rb +1 -1
  57. data/templates/CentOS-6.5-i386-minimal/definition.rb +1 -1
  58. data/templates/CentOS-6.5-i386-netboot/definition.rb +1 -1
  59. data/templates/CentOS-6.5-x86_64-minimal/definition.rb +1 -1
  60. data/templates/CentOS-6.5-x86_64-netboot/definition.rb +1 -1
  61. data/templates/CentOS-7.0-1406-x86_64-netinstall/definition.rb +1 -1
  62. data/templates/Debian-5.0.10-amd64-netboot/definition.rb +1 -1
  63. data/templates/Debian-5.0.10-i386-netboot/definition.rb +1 -1
  64. data/templates/Debian-5.0.8-amd64-netboot/definition.rb +1 -1
  65. data/templates/Debian-5.0.8-i386-netboot/definition.rb +1 -1
  66. data/templates/Debian-6.0.3-amd64-netboot/definition.rb +1 -1
  67. data/templates/Debian-6.0.3-i386-netboot/definition.rb +1 -1
  68. data/templates/Debian-6.0.4-amd64-netboot/definition.rb +1 -1
  69. data/templates/Debian-6.0.4-i386-netboot/definition.rb +1 -1
  70. data/templates/Debian-6.0.5-amd64-netboot/definition.rb +1 -1
  71. data/templates/Debian-6.0.5-i386-netboot/definition.rb +1 -1
  72. data/templates/Debian-6.0.6-amd64-netboot/definition.rb +1 -1
  73. data/templates/Debian-6.0.6-i386-netboot/definition.rb +1 -1
  74. data/templates/Debian-6.0.7-amd64-netboot/definition.rb +1 -1
  75. data/templates/Debian-6.0.7-i386-netboot/definition.rb +1 -1
  76. data/templates/Debian-6.0.8-amd64-netboot/definition.rb +1 -1
  77. data/templates/Debian-6.0.8-i386-netboot/definition.rb +1 -1
  78. data/templates/Debian-6.0.9-amd64-netboot/definition.rb +1 -1
  79. data/templates/Debian-6.0.9-i386-netboot/definition.rb +1 -1
  80. data/templates/Debian-7.0-amd64-netboot/definition.rb +1 -1
  81. data/templates/Debian-7.0-i386-netboot/definition.rb +1 -1
  82. data/templates/Debian-7.1.0-amd64-netboot/definition.rb +1 -1
  83. data/templates/Debian-7.1.0-i386-netboot/definition.rb +1 -1
  84. data/templates/Debian-7.2.0-amd64-netboot/definition.rb +1 -1
  85. data/templates/Debian-7.2.0-i386-netboot/definition.rb +1 -1
  86. data/templates/Debian-7.3.0-amd64-netboot/definition.rb +1 -1
  87. data/templates/Debian-7.3.0-i386-netboot/definition.rb +1 -1
  88. data/templates/Debian-7.4.0-amd64-netboot/definition.rb +1 -1
  89. data/templates/Debian-7.4.0-i386-netboot/definition.rb +1 -1
  90. data/templates/Debian-7.5.0-amd64-netboot/definition.rb +1 -1
  91. data/templates/Debian-7.5.0-i386-netboot/definition.rb +1 -1
  92. data/templates/Debian-7.6.0-amd64-netboot/definition.rb +1 -1
  93. data/templates/Debian-7.6.0-i386-netboot/definition.rb +1 -1
  94. data/templates/Fedora-14-amd64-netboot/definition.rb +1 -1
  95. data/templates/Fedora-14-amd64/definition.rb +1 -1
  96. data/templates/Fedora-14-i386-netboot/definition.rb +1 -1
  97. data/templates/Fedora-14-i386/definition.rb +1 -1
  98. data/templates/Fedora-15-i386-netboot/definition.rb +1 -1
  99. data/templates/Fedora-15-i386/definition.rb +1 -1
  100. data/templates/Fedora-15-x86_64-netboot/definition.rb +1 -1
  101. data/templates/Fedora-15-x86_64/definition.rb +1 -1
  102. data/templates/Fedora-16-i386/definition.rb +1 -1
  103. data/templates/Fedora-16-x86_64-netboot/definition.rb +1 -1
  104. data/templates/Fedora-16-x86_64/definition.rb +1 -1
  105. data/templates/Fedora-17-i386/definition.rb +1 -1
  106. data/templates/Fedora-17-x86_64/definition.rb +1 -1
  107. data/templates/Fedora-18-i386/definition.rb +1 -1
  108. data/templates/Fedora-18-x86_64/definition.rb +1 -1
  109. data/templates/Fedora-19-i386/definition.rb +1 -1
  110. data/templates/Fedora-19-x86_64/definition.rb +1 -1
  111. data/templates/Fedora-20-i386/definition.rb +1 -1
  112. data/templates/Fedora-20-x86_64/definition.rb +1 -1
  113. data/templates/OracleLinux-5.10-i386-DVD/definition.rb +1 -1
  114. data/templates/OracleLinux-5.10-x86_64-DVD/definition.rb +1 -1
  115. data/templates/OracleLinux-5.9-i386-DVD/definition.rb +1 -1
  116. data/templates/OracleLinux-5.9-x86_64-DVD/definition.rb +1 -1
  117. data/templates/OracleLinux-6.3-x86_64-DVD/definition.rb +1 -1
  118. data/templates/OracleLinux-6.4-i386-DVD/definition.rb +1 -1
  119. data/templates/OracleLinux-6.4-x86_64-DVD/definition.rb +1 -1
  120. data/templates/OracleLinux-6.5-i386-DVD/definition.rb +1 -1
  121. data/templates/OracleLinux-6.5-x86_64-DVD/definition.rb +1 -1
  122. data/templates/OracleLinux-7.0-x86_64-DVD/definition.rb +1 -1
  123. data/templates/SLES-11-SP1-DVD-i586-GM/definition.rb +1 -1
  124. data/templates/SLES-11-SP1-DVD-x86_64-GM/definition.rb +1 -1
  125. data/templates/SLES-11-SP2-DVD-x86_64-GM/definition.rb +1 -1
  126. data/templates/SLES-11-SP3-DVD-x86_64-GM/definition.rb +1 -1
  127. data/templates/Sysrescuecd-2.0.0-experimental/definition.rb +1 -1
  128. data/templates/VMware-ESXi-5.0u2-x86_64/definition.rb +1 -1
  129. data/templates/VMware-ESXi-5.1-x86_64/definition.rb +1 -1
  130. data/templates/archlinux-i386/definition.rb +1 -1
  131. data/templates/freebsd-10.0-RELEASE-amd64/definition.rb +1 -1
  132. data/templates/freebsd-8.2-experimental/definition.rb +1 -1
  133. data/templates/freebsd-8.2-pcbsd-amd64/definition.rb +1 -1
  134. data/templates/freebsd-8.2-pcbsd-i386-netboot/definition.rb +1 -1
  135. data/templates/freebsd-8.2-pcbsd-i386/definition.rb +1 -1
  136. data/templates/freebsd-9.0-RELEASE-amd64/definition.rb +1 -1
  137. data/templates/freebsd-9.1-RELEASE-amd64/definition.rb +1 -1
  138. data/templates/freebsd-9.2-RELEASE-amd64/definition.rb +1 -1
  139. data/templates/gentoo-latest-amd64/definition.rb +1 -1
  140. data/templates/gentoo-latest-i686/definition.rb +1 -1
  141. data/templates/netbsd-613-amd64/definition.rb +1 -1
  142. data/templates/openSUSE-11.4-DVD-i586/definition.rb +1 -1
  143. data/templates/openSUSE-11.4-DVD-x86_64/definition.rb +1 -1
  144. data/templates/openSUSE-11.4-NET-i586/definition.rb +1 -1
  145. data/templates/openSUSE-11.4-NET-x86_64/definition.rb +1 -1
  146. data/templates/openSUSE-12.1-DVD+NET-i586/definition.rb +1 -1
  147. data/templates/openSUSE-12.1-DVD+NET-x86_64/definition.rb +1 -1
  148. data/templates/openSUSE-12.3-x86_64-NET_EN/definition.rb +1 -1
  149. data/templates/openSUSE-13.1/definition.rb +1 -1
  150. data/templates/openbsd50_amd64/definition.rb +1 -1
  151. data/templates/openbsd50_i386/definition.rb +1 -1
  152. data/templates/openbsd52_amd64/definition.rb +1 -1
  153. data/templates/openbsd52_i386/definition.rb +1 -1
  154. data/templates/openbsd52_i386_snap/definition.rb +1 -1
  155. data/templates/openbsd53_amd64/definition.rb +1 -1
  156. data/templates/openbsd53_i386/definition.rb +1 -1
  157. data/templates/openbsd54_amd64/definition.rb +1 -1
  158. data/templates/openbsd54_i386/definition.rb +1 -1
  159. data/templates/openbsd55_amd64/definition.rb +1 -1
  160. data/templates/openbsd55_i386/definition.rb +1 -1
  161. data/templates/openindiana-148-ai-x86/definition.rb +1 -1
  162. data/templates/openindiana-151a7-text-x86/definition.rb +1 -1
  163. data/templates/opensuse-11.4-i386-experimental/definition.rb +1 -1
  164. data/templates/scientificlinux-5.7-i386/definition.rb +1 -1
  165. data/templates/scientificlinux-5.7-x86_64/definition.rb +1 -1
  166. data/templates/scientificlinux-5.9-i386/definition.rb +1 -1
  167. data/templates/scientificlinux-5.9-x86_64/definition.rb +1 -1
  168. data/templates/scientificlinux-6.1-i386-netboot/definition.rb +1 -1
  169. data/templates/scientificlinux-6.1-x86_64-netboot/definition.rb +1 -1
  170. data/templates/scientificlinux-6.2-i386-netboot/definition.rb +1 -1
  171. data/templates/scientificlinux-6.2-x86_64-netboot/definition.rb +1 -1
  172. data/templates/scientificlinux-6.3-i386-netboot/definition.rb +1 -1
  173. data/templates/scientificlinux-6.3-x86_64-netboot/definition.rb +1 -1
  174. data/templates/scientificlinux-6.4-i386-netboot/definition.rb +1 -1
  175. data/templates/scientificlinux-6.4-x86_64-netboot/definition.rb +1 -1
  176. data/templates/scientificlinux-6.5-i386-netboot/definition.rb +1 -1
  177. data/templates/scientificlinux-6.5-x86_64-netboot/definition.rb +1 -1
  178. data/templates/solaris-11-express-i386/definition.rb +1 -1
  179. data/templates/ubuntu-10.04.2-amd64-netboot/definition.rb +1 -1
  180. data/templates/ubuntu-10.04.2-server-i386-netboot/definition.rb +1 -1
  181. data/templates/ubuntu-10.04.3-server-i386/definition.rb +1 -1
  182. data/templates/ubuntu-10.04.4-server-amd64-netboot/definition.rb +1 -1
  183. data/templates/ubuntu-10.04.4-server-amd64/definition.rb +1 -1
  184. data/templates/ubuntu-10.04.4-server-i386-netboot/definition.rb +1 -1
  185. data/templates/ubuntu-10.04.4-server-i386/definition.rb +1 -1
  186. data/templates/ubuntu-10.10-server-amd64-netboot/definition.rb +1 -1
  187. data/templates/ubuntu-10.10-server-i386-netboot/definition.rb +1 -1
  188. data/templates/ubuntu-10.10-server-i386/definition.rb +1 -1
  189. data/templates/ubuntu-11.04-server-amd64/definition.rb +1 -1
  190. data/templates/ubuntu-11.04-server-i386/definition.rb +1 -1
  191. data/templates/ubuntu-11.10-server-amd64-ishaya/definition.rb +1 -1
  192. data/templates/ubuntu-11.10-server-amd64-ruby192/definition.rb +1 -1
  193. data/templates/ubuntu-11.10-server-amd64-rvm/definition.rb +1 -1
  194. data/templates/ubuntu-11.10-server-amd64/definition.rb +1 -1
  195. data/templates/ubuntu-11.10-server-i386/definition.rb +1 -1
  196. data/templates/ubuntu-12.04.1-server-amd64-packages/definition.rb +1 -1
  197. data/templates/ubuntu-12.04.1-server-amd64/definition.rb +1 -1
  198. data/templates/ubuntu-12.04.1-server-i386-packages/definition.rb +1 -1
  199. data/templates/ubuntu-12.04.1-server-i386/definition.rb +1 -1
  200. data/templates/ubuntu-12.04.2-desktop-amd64/definition.rb +1 -1
  201. data/templates/ubuntu-12.04.2-server-amd64-netboot/definition.rb +1 -1
  202. data/templates/ubuntu-12.04.2-server-amd64-packages/definition.rb +1 -1
  203. data/templates/ubuntu-12.04.2-server-amd64/definition.rb +1 -1
  204. data/templates/ubuntu-12.04.2-server-i386-netboot/definition.rb +1 -1
  205. data/templates/ubuntu-12.04.2-server-i386-packages/definition.rb +1 -1
  206. data/templates/ubuntu-12.04.2-server-i386/definition.rb +1 -1
  207. data/templates/ubuntu-12.04.3-desktop-i386/definition.rb +1 -1
  208. data/templates/ubuntu-12.04.3-server-amd64-parallels/definition.rb +1 -1
  209. data/templates/ubuntu-12.04.3-server-amd64/definition.rb +1 -1
  210. data/templates/ubuntu-12.04.3-server-i386/definition.rb +1 -1
  211. data/templates/ubuntu-12.04.4-server-amd64/definition.rb +1 -1
  212. data/templates/ubuntu-12.04.4-server-i386/definition.rb +1 -1
  213. data/templates/ubuntu-12.10-desktop-amd64/definition.rb +1 -1
  214. data/templates/ubuntu-12.10-server-amd64-packages/definition.rb +1 -1
  215. data/templates/ubuntu-12.10-server-amd64/definition.rb +1 -1
  216. data/templates/ubuntu-12.10-server-i386-packages/definition.rb +1 -1
  217. data/templates/ubuntu-12.10-server-i386/definition.rb +1 -1
  218. data/templates/ubuntu-13.04-minimal-i386-rvm/definition.rb +1 -1
  219. data/templates/ubuntu-13.04-server-amd64-rvm/definition.rb +1 -1
  220. data/templates/ubuntu-13.04-server-amd64/definition.rb +1 -1
  221. data/templates/ubuntu-13.10-server-amd64/definition.rb +1 -1
  222. data/templates/ubuntu-14.04-server-amd64/definition.rb +1 -1
  223. data/templates/ubuntu-8.04.4-server-amd64/definition.rb +1 -1
  224. data/templates/ubuntu-8.04.4-server-i386/definition.rb +1 -1
  225. data/templates/windows-2008R1-serverstandard-amd64/definition.rb +4 -5
  226. data/templates/windows-2008R1-serverweb-amd64/definition.rb +5 -6
  227. data/templates/windows-2008R1-serverweb-i386/definition.rb +5 -6
  228. data/templates/windows-2008R1-serverwebcore-amd64/definition.rb +5 -6
  229. metadata +2 -8
  230. data/lib/veewee/provider/kvm/box/helper/ssh_options.rb +0 -13
  231. data/lib/veewee/provider/kvm/box/helper/winrm_options.rb +0 -13
  232. data/lib/veewee/provider/parallels/box/helper/ssh_options.rb +0 -14
  233. data/lib/veewee/provider/parallels/box/helper/winrm_options.rb +0 -13
  234. data/lib/veewee/provider/vmfusion/box/helper/ssh_options.rb +0 -14
  235. data/lib/veewee/provider/vmfusion/box/helper/winrm_options.rb +0 -13
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MGYzYTZiOTM2OGM2Nzc3Yjc4NTEyNzhiMjRjMGYyMmQzYTk0OTJlZQ==
4
+ YzM2NTRjOTM1ODExZDQ4OWI1NjU1ZTk5ZWVhMzViNGIwNDA4ZGE0Mw==
5
5
  data.tar.gz: !binary |-
6
- NjdiN2ZkN2QyZGM4YjdiMTk1NGJkMGE4NjdiYWFkYTUzMmE5ZGUxOQ==
6
+ YzM0MDk2Y2IxYzFiNjU3NGRiNGU3NmM0YzcxZTA2M2FhNzU4YTc4Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YTIwNmFmYzIyYWNkZTgwM2NhZWRlODgzMWZhMTYwYzk4OGQwNjczNTU3YjI1
10
- NTdjYTBjMTNmNDI3M2Y3MTNjNDA4NzNmMDk2ZjVkOTA2NzczOTFmZDEwYjE4
11
- OGM1OTdkOTFmMmI4OTE4MGU4YzAxNWY3Y2U1ZDZiYzY5ZTM2YjI=
9
+ ZGQ4M2I3ZDY3MWQyMWIyNmQ2MThkMTllMjk2YWI1ZDcyMjE5OTczZjJjY2Q5
10
+ MzAyN2Q1ZTBkN2Q1MDgzMzBhODVlNmZiNDdlYzQyYTkzMjcxMDRhMTJhODhh
11
+ MjU3MjJlZGYwZGE0OTFlOWRmZTMxZmFlOGI4N2Y3MDhlN2VhZTQ=
12
12
  data.tar.gz: !binary |-
13
- NWIxZWQ5Yzk0MDUzNjk4YzdkNWZkNzVkYzQwMzc5Mjg5ZDE0ODdjOWU4ZWM4
14
- NzNkMzZlYjBmNmQ1ZTM2M2YwNDAxOTcwMWEyODUwOTcyZGU2ZGI0Y2FlNjRh
15
- OGI0ZWNmZDdkYjk0ZGY5MTBkZGRmYWE5NjQwYTVhNzQ1NWJjZGE=
13
+ NzMxYjkxY2YyMjA2NzBiZmZjYjJmNzczYWRjMzJjYThiZjUyYTIyMWQyNWRh
14
+ NzZkMjQ4ZTdkNzE3YjZlMWQ3NTdmYzI4NGQzNWVmZjQzODc1NDViYmFmYWI0
15
+ N2JhNDVmYzE2NmU2OGI0OGJjMjczMjEzZmIzMzdkOTBlZDMzYmU=
@@ -14,8 +14,8 @@ Each template folder name follows a naming scheme to help you choosing the right
14
14
  For example, the template for a Ubuntu 12.10 server (i386) basebox looks like this:
15
15
 
16
16
  ubuntu-12.10-server-i386[-netboot]
17
- ^ ^ ^ ^
18
- | | | +----- install flavor
17
+ ^ ^ ^ ^
18
+ | | | +----- install flavor
19
19
  | | +----- architecture
20
20
  | +----- version
21
21
  +----- OS name
@@ -97,9 +97,9 @@ Or you can remove the folder under `definitions`:
97
97
 
98
98
  ## Manage ISO files
99
99
 
100
- The distro ISOs (also called *disk images*) provide all files needed to install the OS. This file is essential for starting the installation process.
100
+ The distro ISOs (also called *disk images*) provide all files needed to install the OS. This file is essential for starting the installation process.
101
101
 
102
- If you already have an `.iso` file for the desired distribution on your disk, put it inside the `iso/` directory and make sure `definition.rb` is referencing the correct file.
102
+ If you already have an `.iso` file for the desired distribution on your disk, put it inside the `iso/` directory and make sure `definition.rb` is referencing the correct file.
103
103
 
104
104
  If an expected ISO is not found in the `iso/` directory, Veewee will ask you to download the ISO file from the web. Depending on your internet connection fetching an ISO file can take a while.
105
105
 
@@ -113,7 +113,7 @@ In order to build the defined box, execute this subcommand:
113
113
  The `build` subcommand can take the following optional flags:
114
114
 
115
115
  Flag Option | Description
116
- --------------------------------|-------------
116
+ --------------------------------|-------------
117
117
  -f --force | overwrites if already exists
118
118
  -a --auto | automatically downloads the ISO without asking
119
119
  -n --nogui | builds in the background rather than opening a VM GUI and building in the GUI window
@@ -133,7 +133,7 @@ The `build` subcommand will run the following routines behind the scenes:
133
133
  * Mount the ISO file `:iso_file`
134
134
  * Boot up the machine and wait for `:boot_time`
135
135
  * Send the keystrokes in `:boot_cmd_sequence`
136
- * Start up a webserver on `:kickstart_port` to wait for a request from the `:kickstart_file`
136
+ * Start up a webserver on `:kickstart_port` to wait `:kickstart_timeout` for a request for the `:kickstart_file`
137
137
  IMPORTANT: Do NOT navigate to the file in your browser or the server will stop and the installer will not be able to find your preseed
138
138
  * Wait for ssh login to work with `:ssh_user` and `:ssh_password`
139
139
  * `sudo` execute the `:postinstall_files`
@@ -198,7 +198,7 @@ Validation is highly recommended before requesting a fork pull on any modified t
198
198
 
199
199
  Finally let's export the box so it can be distributed or used by Vagrant:
200
200
 
201
- $ bundle exec veewee vbox export 'myubuntubox'
201
+ $ bundle exec veewee vbox export 'myubuntubox'
202
202
 
203
203
 
204
204
  ## Up Next
@@ -92,7 +92,7 @@ All other settings are used internally by Veewee, the virtualization provider, o
92
92
  'initrd=/install/initrd.gz -- <Enter>'
93
93
  ],
94
94
  :kickstart_port => "7122",
95
- :kickstart_timeout => "10000",
95
+ :kickstart_timeout => "60",
96
96
  :kickstart_file => "preseed.cfg",
97
97
  :ssh_login_timeout => "10000",
98
98
  :ssh_user => "vagrant",
@@ -128,7 +128,6 @@ Definition Option | Default | Provider
128
128
  :boot_wait | uninitialised | core
129
129
  :boot_cmd_sequence | empty | core
130
130
  :kickstart_port | uninitialised | core
131
- :kickstart_ip | uninitialised | core
132
131
  :kickstart_timeout | uninitialised | core
133
132
  :kickstart_file | uninitialised | core
134
133
  :ssh_login_timeout | uninitialised | kvm, parallels, virtualbox, vmfusion
@@ -21,7 +21,7 @@ module Veewee
21
21
 
22
22
  attr_accessor :boot_wait, :boot_cmd_sequence
23
23
 
24
- attr_accessor :kickstart_port, :kickstart_ip, :kickstart_timeout, :kickstart_file
24
+ attr_accessor :kickstart_port, :kickstart_timeout, :kickstart_file
25
25
 
26
26
  attr_accessor :ssh_login_timeout, :ssh_user, :ssh_password, :ssh_key, :ssh_host_port, :ssh_guest_port
27
27
 
@@ -92,7 +92,7 @@ module Veewee
92
92
  # :hostiocache => 'off' ,
93
93
  # :os_type_id => 'Ubuntu',
94
94
  # :boot_wait => "10", :boot_cmd_sequence => [ "boot"],
95
- # :kickstart_port => "7122", :kickstart_ip => "127.0.0.1", :kickstart_timeout => 10000,#
95
+ # :kickstart_port => "7122", :kickstart_timeout => 60,#
96
96
  # :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant",:ssh_key => "",
97
97
  @ssh_host_port = "2222" ; @ssh_guest_port = "22"
98
98
  # :ssh_host_port => "2222", :ssh_guest_port => "22", :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
@@ -72,10 +72,12 @@ module Veewee
72
72
  })
73
73
 
74
74
  # Type the boot sequence
75
+ t =
75
76
  Thread.new do
76
77
  self.console_type(boot_sequence)
77
78
  run_hook(:after_boot_sequence)
78
79
  end
80
+ t.abort_on_exception = true
79
81
 
80
82
  self.handle_kickstart(options)
81
83
  end
@@ -221,34 +223,30 @@ module Veewee
221
223
  # It requires a definition to find all the necessary information
222
224
  def handle_kickstart(options)
223
225
 
224
- # Handling the kickstart by web
225
- kickstartfiles=definition.kickstart_file
226
+ case definition.kickstart_file
227
+ when Array then kickstartfiles = definition.kickstart_file
228
+ when String then kickstartfiles = definition.kickstartfiles.split
229
+ when nil then kickstartfiles = []
230
+ else raise "Do not know how to handle kickstart_file: #{kickstart_file.inspect}"
231
+ end
226
232
 
227
- if kickstartfiles.nil? || kickstartfiles.length == 0
233
+ if kickstartfiles.empty?
228
234
  env.ui.info "Skipping webserver as no kickstartfile was specified"
229
235
  else
230
- env.ui.info "Starting a webserver #{definition.kickstart_ip}:#{definition.kickstart_port}\n"
231
- end
232
-
233
- # Check if the kickstart is an array or a single string
234
- if kickstartfiles.is_a?(String)
235
- # Let's turn it into an array
236
- kickstartfiles=kickstartfiles.split
236
+ env.ui.info "Starting a webserver #{host_ip_as_seen_by_guest}:#{definition.kickstart_port}, check your firewall if nothing happens\n"
237
+ timeouts = Array(definition.kickstart_timeout).map(&:to_i)
237
238
  end
238
239
 
239
240
  # For each kickstart file spinup a webserver and wait for the file to be fetched
240
- unless kickstartfiles.nil?
241
- kickstartfiles.each do |kickfile|
242
- wait_for_http_request(
243
- File.join(definition.path, kickfile),
244
- kickfile.start_with?('/') ? kickfile : '/' + kickfile,
245
- {
246
- :port => definition.kickstart_port,
247
- :host => definition.kickstart_ip,
248
- :timeout => definition.kickstart_timeout,
249
- }
250
- )
251
- end
241
+ kickstartfiles.each_with_index do |kickfile, index|
242
+ wait_for_http_request(
243
+ File.join(definition.path, kickfile),
244
+ kickfile.start_with?('/') ? kickfile : '/' + kickfile,
245
+ {
246
+ :port => definition.kickstart_port,
247
+ :timeout => timeouts.fetch(index, timeouts.last), # get the matching kickfile timeout or the last defined
248
+ }
249
+ )
252
250
  end
253
251
  end
254
252
 
@@ -5,8 +5,14 @@ module Veewee
5
5
 
6
6
  def copy_to_box(localfile,remotefile,options={})
7
7
  raise Veewee::Error,"Box is not running" unless self.running?
8
- if definition.winrm_user && definition.winrm_password # prefer winrm
8
+ if
9
+ definition.winrm_user && definition.winrm_password # prefer winrm
10
+ then
9
11
  self.wincp(localfile,remotefile,options)
12
+ elsif
13
+ definition.os_type_id =~ /^Windows/
14
+ then
15
+ raise "Trying to transfer #{localfile} to windows machine without 'winrm_user' and 'winrm_password' set in definition."
10
16
  else
11
17
  self.scp(localfile,remotefile,options)
12
18
  end
@@ -12,26 +12,25 @@ module Veewee
12
12
  def vnc_type(sequence,host,display=20)
13
13
  counter=0
14
14
  env.logger.info "Opening VNC #{host} on display #{display}"
15
- vnc=Net::VNC.open("#{host}:#{display}",{:wait => 0.001})
16
- sequence.each { |s|
17
- counter=counter+1
15
+ Net::VNC.open("#{host}:#{display}",{:wait => 0.001}) do |vnc|
16
+ sequence.each { |s|
17
+ counter=counter+1
18
18
 
19
- ui.info "Typing:[#{counter}]: "+s
19
+ ui.info "Typing:[#{counter}]: "+s
20
20
 
21
- keycodes=string_to_vnccode(s)
21
+ keycodes=string_to_vnccode(s)
22
22
 
23
- keycodes.each do |keycode|
24
- if keycode==:wait
25
- sleep 1
26
- else
27
- send_vnc_keycode(vnc,keycode)
23
+ keycodes.each do |keycode|
24
+ if keycode==:wait
25
+ sleep 1
26
+ else
27
+ send_vnc_keycode(vnc,keycode)
28
+ end
28
29
  end
29
- end
30
- }
31
- vnc.close
32
- ui.info "Done typing."
33
- ui.info ""
34
-
30
+ }
31
+ ui.info "Done typing."
32
+ ui.info ""
33
+ end
35
34
  end
36
35
 
37
36
  def send_vnc_keycode(vnc,keycode)
@@ -48,7 +47,7 @@ module Veewee
48
47
 
49
48
  def string_to_vnccode(thestring)
50
49
 
51
- # https://github.com/aquasync/ruby-vnc/blob/master/data/keys.yaml
50
+ # https://github.com/aquasync/ruby-vnc/blob/master/data/keys.yaml
52
51
 
53
52
  special=Hash.new
54
53
  # Specific veewee
@@ -32,11 +32,10 @@ module Veewee
32
32
  urlpath,
33
33
  {
34
34
  :port => definition.kickstart_port,
35
- :host => definition.kickstart_ip,
36
35
  :timeout => definition.kickstart_timeout,
37
36
  }
38
37
  )
39
-
38
+
40
39
  begin
41
40
  self.when_winrm_login_works(self.ip_address,winrm_options.merge(options)) do
42
41
  env.ui.info "Going to try and copy #{localfile} to #{remotefile.inspect}"
@@ -37,6 +37,10 @@ module Veewee::Provider::Core::Helper::Ssh
37
37
  return ssh_options
38
38
  end
39
39
 
40
+ def ssh_options
41
+ build_ssh_options
42
+ end
43
+
40
44
  def ssh_key_to_a(ssh_key)
41
45
  case ssh_key
42
46
  when "" then []
@@ -23,7 +23,8 @@ module Veewee
23
23
  response['Content-Type']='text/plain'
24
24
  response.status = 200
25
25
  content = File.open(@localfile, "r").read
26
- response.body = case File.extname(@localfile)
26
+ response.body =
27
+ case File.extname(@localfile)
27
28
  when ".erb"
28
29
  ui.info "Rendering and serving file #{@localfile}"
29
30
  ERB.new(content).result(binding)
@@ -47,34 +48,38 @@ module Veewee
47
48
 
48
49
  def allow_for_http_request(filename, urlname, options) # start in new thread
49
50
  s = server_for_http_request(filename, urlname, options.merge({:threaded => false}))
50
- Thread.new { s.start }
51
+ t = Thread.new { s.start }
52
+ t.abort_on_exception = true
51
53
  end
52
54
 
53
- def server_for_http_request(filename, urlname, options={:timeout => 10, :port => 7125, :threaded => false})
55
+ def server_for_http_request(filename, urlname, options)
54
56
  # Calculate the OS equivalent of /dev/null , on windows this is NUL:
55
57
  # http://www.ruby-forum.com/topic/115472
56
58
  fn = test(?e, '/dev/null') ? '/dev/null' : 'NUL:'
59
+ webrick_logger = WEBrick::Log.new(fn, WEBrick::Log::INFO)
57
60
 
58
- webrick_logger=WEBrick::Log.new(fn, WEBrick::Log::INFO)
59
-
60
- s= ::WEBrick::HTTPServer.new(
61
- :Port => options[:port],
62
- :Logger => webrick_logger,
63
- :AccessLog => webrick_logger
64
- )
65
-
66
- env.logger.debug("mounting file #{urlname}")
67
-
68
- s.mount("#{urlname}", Veewee::Provider::Core::Helper::Servlet::FileServlet, filename, ui, options[:threaded])
69
-
70
- trap("INT"){
71
- s.shutdown
72
- ui.info "Stopping webserver"
73
- exit
74
- }
75
-
76
- s
61
+ timeout = options[:timeout] || 60
62
+ server = nil
63
+ Timeout.timeout(timeout) do
64
+ server =
65
+ ::WEBrick::HTTPServer.new(
66
+ :Port => options[:port],
67
+ :Logger => webrick_logger,
68
+ :AccessLog => webrick_logger
69
+ )
70
+ env.logger.debug("mounting file #{urlname}")
71
+ server.mount("#{urlname}", Veewee::Provider::Core::Helper::Servlet::FileServlet, filename, ui, options[:threaded])
72
+ trap("INT"){
73
+ server.shutdown
74
+ ui.info "Stopping webserver"
75
+ exit
76
+ }
77
+ end
78
+ rescue Timeout::Error
79
+ server.shutdown unless server.nil?
80
+ raise "File #{filename.inspect} was not requested in #{timeout}seconds, are you using firewall blocking connections to port: #{options[:port]}?"
77
81
  end
82
+
78
83
  end #Class
79
84
  end #Module
80
85
  end #Module
@@ -33,6 +33,10 @@ module Veewee
33
33
  }
34
34
  end
35
35
 
36
+ def winrm_options
37
+ build_winrm_options
38
+ end
39
+
36
40
  def winrm_up?(ip,options)
37
41
  begin
38
42
  if not @winrm_up
@@ -11,7 +11,6 @@ require 'veewee/provider/kvm/box/destroy'
11
11
  require 'veewee/provider/kvm/box/export_vagrant'
12
12
 
13
13
  require 'veewee/provider/kvm/box/helper/ip'
14
- require 'veewee/provider/kvm/box/helper/ssh_options'
15
14
  require 'veewee/provider/kvm/box/helper/status'
16
15
  require 'veewee/provider/kvm/box/helper/console_type'
17
16
 
@@ -6,6 +6,11 @@ module Veewee
6
6
  def up(options={})
7
7
  matched_servers=@connection.servers.all(:name => name)
8
8
  matched_servers.first.start unless matched_servers.nil?
9
+ rescue Libvirt::Error => e
10
+ warn "
11
+ Libvirt Error! Make sure your user has permissions to run anything.
12
+ "
13
+ raise e
9
14
  end
10
15
 
11
16
  end # End Module
@@ -3,7 +3,6 @@ require 'veewee/provider/core/helper/tcp'
3
3
 
4
4
  require 'veewee/provider/parallels/box/helper/status'
5
5
  require 'veewee/provider/parallels/box/helper/ip'
6
- require 'veewee/provider/parallels/box/helper/ssh_options'
7
6
  require 'veewee/provider/parallels/box/helper/console_type'
8
7
  require 'veewee/provider/parallels/box/helper/buildinfo'
9
8
 
@@ -4,8 +4,6 @@ require 'veewee/provider/core/helper/tcp'
4
4
 
5
5
  require 'veewee/provider/vmfusion/box/helper/status'
6
6
  require 'veewee/provider/vmfusion/box/helper/ip'
7
- require 'veewee/provider/vmfusion/box/helper/ssh_options'
8
- require 'veewee/provider/vmfusion/box/helper/winrm_options'
9
7
  require 'veewee/provider/vmfusion/box/helper/vnc'
10
8
  require 'veewee/provider/vmfusion/box/helper/console_type'
11
9
  require 'veewee/provider/vmfusion/box/helper/buildinfo'
@@ -4,5 +4,5 @@ end
4
4
 
5
5
  # Only set the version constant if it wasn't set before
6
6
  unless defined?(Veewee::VERSION)
7
- ::Veewee::VERSION="0.4.3"
7
+ ::Veewee::VERSION="0.4.4"
8
8
  end
@@ -5,7 +5,7 @@ Veewee::Definition.declare({
5
5
  :iso_file => "CentOS-4.8-i386-bin-DVD.iso", :iso_src => "", :iso_md5 => "", :iso_download_timeout => 1000,
6
6
  :iso_download_instructions => "This iso is no more available, for instructions see http://vault.centos.org/4.8/isos/i386/",
7
7
  :boot_wait => "10", :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
8
- :kickstart_port => "7122", :kickstart_timeout => 10000, :kickstart_file => "ks.cfg",
8
+ :kickstart_port => "7122", :kickstart_timeout => 300, :kickstart_file => "ks.cfg",
9
9
  :ssh_login_timeout => "10000", :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
10
10
  :ssh_host_port => "7222", :ssh_guest_port => "22",
11
11
  :sudo_cmd => "echo '%p'|sudo -S sh '%f'",
@@ -18,7 +18,7 @@ Veewee::Session.declare({
18
18
  :boot_wait => "10",
19
19
  :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
20
20
  :kickstart_port => "7122",
21
- :kickstart_timeout => 10000,
21
+ :kickstart_timeout => 300,
22
22
  :kickstart_file => "ks.cfg",
23
23
  :ssh_login_timeout => "10000",
24
24
  :ssh_user => "vagrant",
@@ -18,7 +18,7 @@ Veewee::Session.declare({
18
18
  :boot_wait => "10",
19
19
  :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
20
20
  :kickstart_port => "7122",
21
- :kickstart_timeout => 10000,
21
+ :kickstart_timeout => 300,
22
22
  :kickstart_file => "ks.cfg",
23
23
  :ssh_login_timeout => "10000",
24
24
  :ssh_user => "vagrant",
@@ -18,7 +18,7 @@ Veewee::Session.declare({
18
18
  :boot_wait => "10",
19
19
  :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
20
20
  :kickstart_port => "7122",
21
- :kickstart_timeout => 10000,
21
+ :kickstart_timeout => 300,
22
22
  :kickstart_file => "ks.cfg",
23
23
  :ssh_login_timeout => "10000",
24
24
  :ssh_user => "vagrant",
@@ -18,7 +18,7 @@ Veewee::Session.declare({
18
18
  :boot_wait => "10",
19
19
  :boot_cmd_sequence => [ 'linux text ks=http://%IP%:%PORT%/ks.cfg<Enter>' ],
20
20
  :kickstart_port => "7122",
21
- :kickstart_timeout => 10000,
21
+ :kickstart_timeout => 300,
22
22
  :kickstart_file => "ks.cfg",
23
23
  :ssh_login_timeout => "10000",
24
24
  :ssh_user => "vagrant",