veewee 0.2.2 → 0.2.3

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 (123) hide show
  1. data/Gemfile +1 -1
  2. data/Gemfile.lock +75 -0
  3. data/lib/veewee.rb +2 -0
  4. data/lib/veewee/command.rb +1 -59
  5. data/lib/veewee/command/basebox.rb +63 -0
  6. data/lib/veewee/command/basebox_build.rb +32 -0
  7. data/lib/veewee/command/basebox_define.rb +28 -0
  8. data/lib/veewee/command/basebox_destroy.rb +22 -0
  9. data/lib/veewee/command/basebox_export.rb +22 -0
  10. data/lib/veewee/command/basebox_list.rb +23 -0
  11. data/lib/veewee/command/basebox_ostypes.rb +23 -0
  12. data/lib/veewee/command/basebox_templates.rb +23 -0
  13. data/lib/veewee/command/basebox_undefine.rb +22 -0
  14. data/lib/veewee/command/basebox_validate.rb +26 -0
  15. data/lib/veewee/config.rb +1 -2
  16. data/lib/veewee/version.rb +1 -1
  17. data/templates/CentOS-6.0-x86_64-minimal/definition.rb +1 -1
  18. data/templates/CentOS-6.0-x86_64-minimal/postinstall.sh +12 -4
  19. data/templates/CentOS-6.2-x86_64-minimal/definition.rb +15 -0
  20. data/templates/CentOS-6.2-x86_64-minimal/ks.cfg +37 -0
  21. data/templates/CentOS-6.2-x86_64-minimal/postinstall.sh +50 -0
  22. data/templates/SLES-11-SP1-DVD-i586-GM/autoinst_de.xml +1127 -0
  23. data/templates/SLES-11-SP1-DVD-i586-GM/autoinst_en.xml +1127 -0
  24. data/templates/SLES-11-SP1-DVD-i586-GM/definition.rb +37 -0
  25. data/templates/SLES-11-SP1-DVD-i586-GM/postinstall.sh +43 -0
  26. data/templates/SLES-11-SP1-DVD-x86_64-GM/autoinst_de.xml +1171 -0
  27. data/templates/SLES-11-SP1-DVD-x86_64-GM/autoinst_en.xml +1171 -0
  28. data/templates/SLES-11-SP1-DVD-x86_64-GM/definition.rb +37 -0
  29. data/templates/SLES-11-SP1-DVD-x86_64-GM/postinstall.sh +43 -0
  30. data/templates/funtoo-latest-generic_64-stable/definition.rb +34 -0
  31. data/templates/funtoo-latest-generic_64-stable/postinstall.sh +177 -0
  32. data/templates/funtoo-latest-generic_64-stable/postinstall2.sh +83 -0
  33. data/templates/gentoo-latest-x86_64-experimental/definition.rb +4 -4
  34. data/templates/gentoo-latest-x86_64-experimental/postinstall.sh +2 -2
  35. data/templates/openSUSE-12.1-DVD+NET-i586/autoinst_de.xml +1483 -0
  36. data/templates/openSUSE-12.1-DVD+NET-i586/autoinst_en.xml +1483 -0
  37. data/templates/openSUSE-12.1-DVD+NET-i586/definition.rb +44 -0
  38. data/templates/openSUSE-12.1-DVD+NET-i586/postinstall.sh +43 -0
  39. data/templates/openSUSE-12.1-DVD+NET-x86_64/autoinst_de.xml +1727 -0
  40. data/templates/openSUSE-12.1-DVD+NET-x86_64/autoinst_en.xml +1727 -0
  41. data/templates/openSUSE-12.1-DVD+NET-x86_64/definition.rb +44 -0
  42. data/templates/openSUSE-12.1-DVD+NET-x86_64/postinstall.sh +43 -0
  43. data/templates/openbsd50_amd64/README +28 -0
  44. data/templates/openbsd50_amd64/definition.rb +84 -0
  45. data/templates/openbsd50_amd64/postinstall.sh +81 -0
  46. data/templates/openbsd50_i386/.definition.rb.swp +0 -0
  47. data/templates/openbsd50_i386/README +28 -0
  48. data/templates/openbsd50_i386/definition.rb +84 -0
  49. data/templates/openbsd50_i386/postinstall.sh +80 -0
  50. data/templates/windows-2008R1-serverstandard-amd64/Autounattend.xml +146 -0
  51. data/templates/windows-2008R1-serverstandard-amd64/README.md +134 -0
  52. data/templates/windows-2008R1-serverstandard-amd64/cygwin-setup.exe +0 -0
  53. data/templates/windows-2008R1-serverstandard-amd64/definition.rb +114 -0
  54. data/templates/windows-2008R1-serverstandard-amd64/install-cygwin-sshd.bat +40 -0
  55. data/templates/windows-2008R1-serverstandard-amd64/install-guest-additions.bat +5 -0
  56. data/templates/windows-2008R1-serverstandard-amd64/install-winrm.bat +14 -0
  57. data/templates/windows-2008R1-serverstandard-amd64/oracle-cert.cer +0 -0
  58. data/templates/windows-2008R1-serverstandard-amd64/postinstall.sh +74 -0
  59. data/templates/windows-2008R1-serverstandard-amd64/sudo +2 -0
  60. data/templates/windows-2008R1-serverstandard-amd64/winrm.rb +8 -0
  61. data/templates/windows-2008R2-amd64/cygwin-setup.exe +0 -0
  62. data/templates/windows-2008R2-amd64/install-winrm.bat +2 -0
  63. data/templates/windows-2008R2-serverstandard-amd64/Autounattend.xml +147 -0
  64. data/templates/windows-2008R2-serverstandard-amd64/README.md +142 -0
  65. data/templates/windows-2008R2-serverstandard-amd64/definition.rb +44 -0
  66. data/templates/windows-2008R2-serverstandard-amd64/install-cygwin-sshd.bat +41 -0
  67. data/templates/windows-2008R2-serverstandard-amd64/install-winrm.bat +11 -0
  68. data/templates/windows-2008R2-serverstandard-amd64/oracle-cert.cer +0 -0
  69. data/templates/windows-2008R2-serverstandard-amd64/postinstall.sh +74 -0
  70. data/templates/windows-7-enterprise-amd64/Autounattend.xml +149 -0
  71. data/templates/windows-7-enterprise-amd64/README.md +52 -0
  72. data/templates/windows-7-enterprise-amd64/definition.rb +39 -0
  73. data/templates/windows-7-enterprise-amd64/install-cygwin-sshd.bat +40 -0
  74. data/templates/windows-7-enterprise-amd64/install-winrm.bat +14 -0
  75. data/templates/windows-7-enterprise-amd64/oracle-cert.cer +0 -0
  76. data/templates/windows-7-enterprise-amd64/postinstall.sh +74 -0
  77. data/templates/windows-7-enterprise-i386/Autounattend.xml +151 -0
  78. data/templates/windows-7-enterprise-i386/README.md +169 -0
  79. data/templates/windows-7-enterprise-i386/definition.rb +40 -0
  80. data/templates/windows-7-enterprise-i386/install-cygwin-sshd.bat +40 -0
  81. data/templates/windows-7-enterprise-i386/install-winrm.bat +14 -0
  82. data/templates/windows-7-enterprise-i386/oracle-cert.cer +0 -0
  83. data/templates/windows-7-enterprise-i386/postinstall.sh +74 -0
  84. data/templates/windows-7-premium-amd64/Autounattend.xml +152 -0
  85. data/templates/windows-7-premium-amd64/README.md +171 -0
  86. data/templates/windows-7-premium-amd64/definition.rb +38 -0
  87. data/templates/windows-7-premium-amd64/install-chefclient.bat +44 -0
  88. data/templates/windows-7-premium-amd64/install-winrm.bat +11 -0
  89. data/templates/windows-7-premium-amd64/oracle-cert.cer +0 -0
  90. data/templates/windows-7-premium-amd64/postinstall.sh +124 -0
  91. data/templates/windows-7-premium-amd64/winrm.rb +8 -0
  92. data/templates/windows-7-professional-amd64/Autounattend.xml +152 -0
  93. data/templates/windows-7-professional-amd64/README.md +171 -0
  94. data/templates/windows-7-professional-amd64/definition.rb +41 -0
  95. data/templates/windows-7-professional-amd64/install-cygwin-sshd.bat +40 -0
  96. data/templates/windows-7-professional-amd64/install-winrm.bat +14 -0
  97. data/templates/windows-7-professional-amd64/oracle-cert.cer +0 -0
  98. data/templates/windows-7-professional-amd64/postinstall.sh +74 -0
  99. data/templates/windows-7-ultimate-amd64/Autounattend.xml +152 -0
  100. data/templates/windows-7-ultimate-amd64/README.md +89 -0
  101. data/templates/windows-7-ultimate-amd64/definition.rb +41 -0
  102. data/templates/windows-7-ultimate-amd64/install-cygwin-sshd.bat +40 -0
  103. data/templates/windows-7-ultimate-amd64/install-winrm.bat +14 -0
  104. data/templates/windows-7-ultimate-amd64/oracle-cert.cer +0 -0
  105. data/templates/windows-7-ultimate-amd64/postinstall.sh +74 -0
  106. data/templates/windows-7sp1-ultimate-amd64/Autounattend.xml +152 -0
  107. data/templates/windows-7sp1-ultimate-amd64/README.md +89 -0
  108. data/templates/windows-7sp1-ultimate-amd64/definition.rb +42 -0
  109. data/templates/windows-7sp1-ultimate-amd64/install-cygwin-sshd.bat +40 -0
  110. data/templates/windows-7sp1-ultimate-amd64/install-winrm.bat +14 -0
  111. data/templates/windows-7sp1-ultimate-amd64/oracle-cert.cer +0 -0
  112. data/templates/windows-7sp1-ultimate-amd64/postinstall.sh +74 -0
  113. data/templates/windows-8-preview-dev-amd64/Autounattend.xml +140 -0
  114. data/templates/windows-8-preview-dev-amd64/README.md +134 -0
  115. data/templates/windows-8-preview-dev-amd64/cygwin-setup.exe +0 -0
  116. data/templates/windows-8-preview-dev-amd64/definition.rb +114 -0
  117. data/templates/windows-8-preview-dev-amd64/install-cygwin-sshd.bat +38 -0
  118. data/templates/windows-8-preview-dev-amd64/install-winrm.bat +11 -0
  119. data/templates/windows-8-preview-dev-amd64/oracle-cert.cer +0 -0
  120. data/templates/windows-8-preview-dev-amd64/postinstall.sh +122 -0
  121. data/templates/windows-8-preview-dev-amd64/winrm.rb +8 -0
  122. data/veewee.gemspec +3 -2
  123. metadata +162 -34
@@ -0,0 +1,152 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <unattend xmlns="urn:schemas-microsoft-com:unattend">
3
+ <settings pass="oobeSystem">
4
+ <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
5
+ <UserAccounts>
6
+ <AdministratorPassword>
7
+ <Value>dgBhAGcAcgBhAG4AdABBAGQAbQBpAG4AaQBzAHQAcgBhAHQAbwByAFAAYQBzAHMAdwBvAHIAZAA=</Value>
8
+ <PlainText>false</PlainText>
9
+ </AdministratorPassword>
10
+ <LocalAccounts>
11
+ <LocalAccount wcm:action="add">
12
+ <Password>
13
+ <Value>dgBhAGcAcgBhAG4AdABQAGEAcwBzAHcAbwByAGQA</Value>
14
+ <PlainText>false</PlainText>
15
+ </Password>
16
+ <Description>Vagrant User</Description>
17
+ <DisplayName>Vagrant</DisplayName>
18
+ <Group>administrators</Group>
19
+ <Name>vagrant</Name>
20
+ </LocalAccount>
21
+ </LocalAccounts>
22
+ </UserAccounts>
23
+ <OOBE>
24
+ <HideEULAPage>true</HideEULAPage>
25
+ <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
26
+ <NetworkLocation>Work</NetworkLocation>
27
+ <ProtectYourPC>3</ProtectYourPC>
28
+ </OOBE>
29
+ <AutoLogon>
30
+ <Password>
31
+ <Value>dgBhAGcAcgBhAG4AdABQAGEAcwBzAHcAbwByAGQA</Value>
32
+ <PlainText>false</PlainText>
33
+ </Password>
34
+ <Username>vagrant</Username>
35
+ <Enabled>true</Enabled>
36
+ </AutoLogon>
37
+ <FirstLogonCommands>
38
+ <SynchronousCommand wcm:action="add">
39
+ <CommandLine>cmd.exe /c a:install-winrm.bat</CommandLine>
40
+ <Description>Install winrm</Description>
41
+ <Order>1</Order>
42
+ <RequiresUserInput>true</RequiresUserInput>
43
+ </SynchronousCommand>
44
+ <SynchronousCommand wcm:action="add">
45
+ <Order>2</Order>
46
+ <CommandLine>cmd.exe /c a:install-chefclient.bat</CommandLine>
47
+ <Description>Install chefclient</Description>
48
+ <RequiresUserInput>false</RequiresUserInput>
49
+ </SynchronousCommand>
50
+ </FirstLogonCommands>
51
+ <ShowWindowsLive>false</ShowWindowsLive>
52
+ </component>
53
+ <component name="Microsoft-Windows-WinRE-RecoveryAgent" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
54
+ <UninstallWindowsRE>true</UninstallWindowsRE>
55
+ </component>
56
+ </settings>
57
+ <settings pass="windowsPE">
58
+ <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
59
+ <DiskConfiguration>
60
+ <Disk wcm:action="add">
61
+ <CreatePartitions>
62
+ <CreatePartition wcm:action="add">
63
+ <Order>1</Order>
64
+ <Type>Primary</Type>
65
+ <Size>20000</Size>
66
+ </CreatePartition>
67
+ </CreatePartitions>
68
+ <ModifyPartitions>
69
+ <ModifyPartition wcm:action="add">
70
+ <Active>true</Active>
71
+ <Extend>false</Extend>
72
+ <Format>NTFS</Format>
73
+ <Label>Vagrant7</Label>
74
+ <Letter>C</Letter>
75
+ <Order>1</Order>
76
+ <PartitionID>1</PartitionID>
77
+ </ModifyPartition>
78
+ </ModifyPartitions>
79
+ <DiskID>0</DiskID>
80
+ <WillWipeDisk>true</WillWipeDisk>
81
+ </Disk>
82
+ <WillShowUI>OnError</WillShowUI>
83
+ </DiskConfiguration>
84
+ <UserData>
85
+ <!-- Product Key from http://technet.microsoft.com/en-us/library/ff793406.aspx -->
86
+ <ProductKey>
87
+ <WillShowUI>Never</WillShowUI>
88
+ </ProductKey>
89
+ <AcceptEula>true</AcceptEula>
90
+ <FullName>Vagrant User</FullName>
91
+ <Organization>Vagrant Inc.</Organization>
92
+ </UserData>
93
+ <ImageInstall>
94
+ <OSImage>
95
+ <InstallFrom>
96
+ <MetaData wcm:action="add">
97
+ <Key>/IMAGE/NAME</Key>
98
+ <Value>Windows 7 ULTIMATE</Value>
99
+ </MetaData>
100
+ </InstallFrom>
101
+ <InstallTo>
102
+ <DiskID>0</DiskID>
103
+ <PartitionID>1</PartitionID>
104
+ </InstallTo>
105
+ <WillShowUI>OnError</WillShowUI>
106
+ <InstallToAvailablePartition>false</InstallToAvailablePartition>
107
+ </OSImage>
108
+ </ImageInstall>
109
+ <EnableFirewall>true</EnableFirewall>
110
+ </component>
111
+ <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
112
+ <SetupUILanguage>
113
+ <UILanguage>en-US</UILanguage>
114
+ </SetupUILanguage>
115
+ <InputLocale>en-US</InputLocale>
116
+ <SystemLocale>en-US</SystemLocale>
117
+ <UILanguage>en-US</UILanguage>
118
+ <UserLocale>en-US</UserLocale>
119
+ </component>
120
+ </settings>
121
+ <settings pass="specialize">
122
+ <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
123
+ <OEMInformation>
124
+ <HelpCustomized>false</HelpCustomized>
125
+ </OEMInformation>
126
+ <ComputerName>Vagrant-win7</ComputerName>
127
+ <TimeZone>New Zealand Standard Time</TimeZone>
128
+ <RegisteredOrganization></RegisteredOrganization>
129
+ <RegisteredOwner>Vagrant</RegisteredOwner>
130
+ </component>
131
+ <component name="Microsoft-Windows-Security-SPP-UX" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
132
+ <SkipAutoActivation>true</SkipAutoActivation>
133
+ </component>
134
+ <component name="Microsoft-Windows-SystemRestore-Main" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
135
+ <DisableSR>1</DisableSR>
136
+ </component>
137
+ <component name="Security-Malware-Windows-Defender" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
138
+ <DisableAntiSpyware>true</DisableAntiSpyware>
139
+ </component>
140
+ </settings>
141
+ <settings pass="offlineServicing">
142
+ <component name="Microsoft-Windows-LUA-Settings" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
143
+ <EnableLUA>false</EnableLUA>
144
+ </component>
145
+ </settings>
146
+ <settings pass="generalize">
147
+ <component name="Microsoft-Windows-Security-SPP" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
148
+ <SkipRearm>1</SkipRearm>
149
+ </component>
150
+ </settings>
151
+ <cpi:offlineImage cpi:source="wim:d:/sources/install.wim#Windows 7 HOMEPREMIUM" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
152
+ </unattend>
@@ -0,0 +1,171 @@
1
+ You can download a free trial of Windows 7 Enterprise 90-day Trial
2
+
3
+ url: http://technet.microsoft.com/en-us/evalcenter/cc442495.aspx
4
+ file: 7600.16385.090713-1255_x64fre_enterprise_en-us_EVAL_Eval_Enterprise-GRMCENXEVAL_EN_DVD.iso
5
+ md5sum: 1d0d239a252cb53e466d39e752b17c28
6
+
7
+ '''
8
+ PS C:\Users\Administrator> Dism /Get-WIMInfo /WimFile:d:\sources\install.wim
9
+
10
+ Deployment Image Servicing and Management tool
11
+ Version: 6.1.7600.16385
12
+
13
+ Details for image : d:\sources\install.wim
14
+
15
+ Index : 1
16
+ Name : Windows 7 ENTERPRISE
17
+ Description : Windows 7 ENTERPRISE
18
+ Size : 11,913,037,777 bytes
19
+
20
+ The operation completed successfully.
21
+ '''
22
+
23
+
24
+ Though I have also used "Windows 7 7600 AIO.ISO" from MSDN
25
+ * All In One = AIO
26
+ file: Windows 7 7600 AIO.ISO
27
+ md5sum: ace6c61269613bf515fd59c62185bbcf
28
+
29
+
30
+ '''
31
+ PS C:\Users\Administrator> Dism /Get-WIMInfo /WimFile:d:\sources\install.wim
32
+
33
+ Deployment Image Servicing and Management tool
34
+ Version: 6.1.7600.16385
35
+
36
+ Details for image : d:\sources\install.wim
37
+
38
+ Index : 1
39
+ Name : Windows 7 STARTER
40
+ Description : Windows 7 STARTER
41
+ Size : 7,936,340,784 bytes
42
+
43
+ Index : 2
44
+ Name : Windows 7 HOMEBASIC
45
+ Description : Windows 7 HOMEBASIC
46
+ Size : 7,992,394,907 bytes
47
+
48
+ Index : 3
49
+ Name : Windows 7 HOMEPREMIUM
50
+ Description : Windows 7 HOMEPREMIUM
51
+ Size : 8,432,859,356 bytes
52
+
53
+ Index : 4
54
+ Name : Windows 7 PROFESSIONAL
55
+ Description : Windows 7 PROFESSIONAL
56
+ Size : 8,313,318,889 bytes
57
+
58
+ Index : 5
59
+ Name : Windows 7 ULTIMATE
60
+ Description : Windows 7 ULTIMATE
61
+ Size : 8,471,060,645 bytes
62
+
63
+ Index : 6
64
+ Name : Windows 7 Home Basic X64
65
+ Description : Windows 7 HOMEBASIC
66
+ Size : 11,500,789,302 bytes
67
+
68
+ Index : 7
69
+ Name : Windows 7 Home Premium X64
70
+ Description : Windows 7 HOMEPREMIUM
71
+ Size : 12,012,660,212 bytes
72
+
73
+ Index : 8
74
+ Name : Windows 7 Home Professional X64
75
+ Description : Windows 7 PROFESSIONAL
76
+ Size : 11,910,752,928 bytes
77
+
78
+ Index : 9
79
+ Name : Windows 7 Home Ultimate X64
80
+ Description : Windows 7 ULTIMATE
81
+ Size : 12,070,211,908 bytes
82
+
83
+ The operation completed successfully.
84
+ '''
85
+
86
+ - place it in a directory called iso
87
+
88
+ The installation uses the Standard way for Windows Unattended installation. The XML file was created using the Windows AIK kit, but the file can also be edited by hand.
89
+
90
+ To edit the Autounattend.xml and validate it:
91
+ You can download The Windows® Automated Installation Kit (AIK) for Windows® 7:
92
+ url: http://www.microsoft.com/download/en/details.aspx?id=5753
93
+ file: KB3AIK_EN.iso
94
+ md5sum: 1e73b24a89eceab9d50585b92db5482f
95
+
96
+
97
+
98
+ - Building the machine creates a floppy that contains:
99
+ - AutoUnattend.xml (that will configure the windows)
100
+ - winrm-install.bat (activates the http and https listener + punches the firewall hole)
101
+
102
+ AIK also includes dism, which will allow you to choose a specific version:
103
+
104
+ If you want to install a different version, edit Autoattended.xml and replace the /IMAGE/NAME value with
105
+ one of the names listed in the sources/install.wim on the install DVD .iso
106
+
107
+ # <InstallFrom>
108
+ # <MetaData wcm:action="add">
109
+ # <Key>/IMAGE/NAME</Key>
110
+ # <Value>Windows Server 2008 R2 SERVERSTANDARD</Value>
111
+ # </MetaData>
112
+ # </InstallFrom>
113
+
114
+
115
+ This gets us nearly there, but we still need a winrm provisioner, as I don't like having to install cygwin.
116
+
117
+ Expose the winrm port:
118
+
119
+ <pre>
120
+ $ gem install chef
121
+ $ gem install knife-windows
122
+ #Create a tunnel
123
+ $ ssh -p 7222 -L5985:localhost:5985 vagrant@localhost
124
+ $ knife bootstrap windows winrm localhost -x Administrator -P 'vagrant'
125
+ </pre>
126
+
127
+
128
+ - http://wiki.opscode.com/display/chef/Knife+Windows+Bootstrap
129
+ - https://github.com/opscode/knife-windows/blob/master/lib/chef/knife/bootstrap/windows-shell.erb
130
+
131
+ - https://github.com/zenchild/WinRM
132
+
133
+ - http://devopscloud.net/2011/04/17/managing-chef-from-windows-7/
134
+ - http://devopscloud.net/2011/04/28/powershell-userdata-to-start-a-chef-run/
135
+ - http://devopscloud.net/2011/03/23/dissection-of-a-chef-recipe-or-two-for-windows/
136
+ - https://github.com/pmorton/chef-windows-installer
137
+
138
+ ==
139
+ https://github.com/zenchild/WinRM/issues/unreads#issue/1
140
+ http -> requires unencryptedwinrm quickconfig (said yes to enable firewall)
141
+ winrm p winrm/config/service @{AllowUnencrypted="true"}
142
+ winrm set winrm/config/service/auth @{Basic="true"}netsh advfirewall firewall set rule group="remote administration" new enable=yes
143
+
144
+ - http://forums.citrix.com/thread.jspa?messageID=1535826
145
+ - http://support.microsoft.com/kb/2019527
146
+
147
+ winrm get winrm/config
148
+
149
+ The purpose of configuring WinRM for HTTPS is to encrypt the data being sent across the wire.
150
+
151
+ WinRM HTTPS requires a local computer "Server Authentication" certificate with a CN matching the hostname, that is not expired, revoked, or self-signed to be installed.
152
+
153
+ To install or view certificates for the local computer:
154
+
155
+ - click Start, run, MMC, "File" menu, "Add or Remove Snap-ins" select "Certificates" and click "Add". Go through the wizard selecting "Computer account".
156
+
157
+ - Install or view the certificates under:
158
+ Certificates (Local computer)
159
+ Personal
160
+ Certificates
161
+
162
+ If you do not have a Sever Authenticating certificate consult your certicate administrator. If you have a microsoft Certificate server you may be abel to request a certificate using the web certificate template from HTTPS://<MyDomainCertificateServer>/certsrv
163
+
164
+ Once the certificate is installed type the following to configure WINRM to listen on HTTPS:
165
+
166
+ winrm quickconfig -transport:https
167
+
168
+ If you do not have an appropriate certificate you can run the following with the authentication methods configured for WinRM however the data will not be encrypted.
169
+
170
+ winrm quickconfig
171
+
@@ -0,0 +1,38 @@
1
+ # -*- coding: utf-8 -*-
2
+ #video memory size should be at least 32meg for windows 7 to do full screen on my desktop
3
+ # I'm not sure how to set that with veewee::session yet
4
+ Veewee::Session.declare({
5
+ :os_type_id => 'Windows7_64',
6
+ :iso_file => "Windows 7 7600 AIO.ISO",
7
+ :iso_src => "", # Manual download
8
+ :iso_md5 => "",
9
+ :iso_download_timeout => "1000",
10
+
11
+ :cpu_count => '1',
12
+ :memory_size=> '512',
13
+ :disk_size => '20280', :disk_format => 'VDI', :hostiocache => 'off',
14
+
15
+ :floppy_files => [
16
+ "Autounattend.xml",
17
+ "install-winrm.bat",
18
+ "install-chefclient.bat"
19
+ ],
20
+
21
+
22
+ :boot_wait => "660", #ten minutes, ten seconds
23
+ :boot_cmd_sequence => [
24
+ '<Tab><Spacebar><Tab><Tab><Tab><Spacebar>'
25
+ ],
26
+
27
+ :ssh_login_timeout => "10000",
28
+ # Actively attempt to winrm (no ssh on base windows) in for 10000 seconds
29
+ :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
30
+ :ssh_host_port => "59857", :ssh_guest_port => "5985",
31
+ # And run postinstall.sh for up to 10000 seconds
32
+ :postinstall_timeout => "10000",
33
+ :postinstall_files => ["postinstall.sh"],
34
+ # No sudo on windows
35
+ :sudo_cmd => "sh '%f'",
36
+ # Shutdown is different as well
37
+ :shutdown_cmd => "shutdown /p /t 60 /c \"Vagrant Shutdown\" /f /d p:4:1",
38
+ })
@@ -0,0 +1,44 @@
1
+ mkdir C:\chef
2
+
3
+ > C:\chef\wget.vbs (
4
+ echo.url = WScript.Arguments.Named^("url"^)
5
+ echo.path = WScript.Arguments.Named^("path"^)
6
+ echo.Set objXMLHTTP = CreateObject^("MSXML2.ServerXMLHTTP"^)
7
+ echo.Set wshShell = CreateObject^( "WScript.Shell" ^)
8
+ echo.Set objUserVariables = wshShell.Environment^("USER"^)
9
+ echo.
10
+ echo.'http proxy is optional
11
+ echo.'attempt to read from HTTP_PROXY env var first
12
+ echo.On Error Resume Next
13
+ echo.
14
+ echo.If NOT ^(objUserVariables^("HTTP_PROXY"^) = ""^) Then
15
+ echo.objXMLHTTP.setProxy 2, objUserVariables^("HTTP_PROXY"^)
16
+ echo.
17
+ echo.'fall back to named arg
18
+ echo.ElseIf NOT ^(WScript.Arguments.Named^("proxy"^) = ""^) Then
19
+ echo.objXMLHTTP.setProxy 2, WScript.Arguments.Named^("proxy"^)
20
+ echo.End If
21
+ echo.
22
+ echo.On Error Goto 0
23
+ echo.
24
+ echo.objXMLHTTP.open "GET", url, false
25
+ echo.objXMLHTTP.send^(^)
26
+ echo.If objXMLHTTP.Status = 200 Then
27
+ echo.Set objADOStream = CreateObject^("ADODB.Stream"^)
28
+ echo.objADOStream.Open
29
+ echo.objADOStream.Type = 1
30
+ echo.objADOStream.Write objXMLHTTP.ResponseBody
31
+ echo.objADOStream.Position = 0
32
+ echo.Set objFSO = Createobject^("Scripting.FileSystemObject"^)
33
+ echo.If objFSO.Fileexists^(path^) Then objFSO.DeleteFile path
34
+ echo.Set objFSO = Nothing
35
+ echo.objADOStream.SaveToFile path
36
+ echo.objADOStream.Close
37
+ echo.Set objADOStream = Nothing
38
+ echo.End if
39
+ echo.Set objXMLHTTP = Nothing
40
+ )
41
+
42
+ @rem Install Chef using chef-client MSI installer
43
+ cscript /nologo C:\chef\wget.vbs /url:http://www.opscode.com/chef/install.msi /path:%TEMP%\chef-client-latest.msi
44
+ msiexec /qb /i %TEMP%\chef-client-latest.msi
@@ -0,0 +1,11 @@
1
+ cmd /c winrm quickconfig -q
2
+ cmd /c winrm quickconfig -transport:http
3
+ cmd /c winrm set winrm/config @{MaxTimeoutms="1800000"}
4
+ cmd /c winrm set winrm/config/winrs @{MaxMemoryPerShellMB="300"}
5
+ cmd /c winrm set winrm/config/service @{AllowUnencrypted="true"}
6
+ cmd /c winrm set winrm/config/service/auth @{Basic="true"}
7
+ cmd /c winrm set winrm/config/listener?Address=*+Transport=HTTP @{Port="5985"}
8
+ cmd /c netsh advfirewall firewall set rule group="remote administration" new enable=yes
9
+ cmd /c netsh firewall add portopening TCP 5985 "Port 5985"
10
+ cmd /c net stop winrm
11
+ cmd /c net start winrm
@@ -0,0 +1,124 @@
1
+ # Create the home directory
2
+ mkdir /home/vagrant
3
+ chown vagrant /home/vagrant
4
+ cd /home/vagrant
5
+
6
+ # Install ssh certificates
7
+ mkdir /home/vagrant/.ssh
8
+ chmod 700 /home/vagrant/.ssh
9
+ cd /home/vagrant/.ssh
10
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
11
+ chown -R vagrant /home/vagrant/.ssh
12
+ cd ..
13
+
14
+ # Install rpm,apt-get like code for cygwin
15
+ # http://superuser.com/questions/40545/upgrading-and-installing-packages-through-the-cygwin-command-line
16
+ wget http://apt-cyg.googlecode.com/svn/trunk/apt-cyg
17
+ chmod +x apt-cyg
18
+ mv apt-cyg /usr/local/bin/
19
+
20
+ # Download Daemontools Lite
21
+ # This needs some fixing as the url seems to change every X time ...
22
+ #wget http://www.daemon-tools.cc/eng/downloads/dtproAdv
23
+ #cat http://www.daemon-tools.cc/eng/downloads/dtLite|grep <div download ...>
24
+ URL=$(curl -L http://www.daemon-tools.cc/eng/downloads/dtLite|grep http|grep exe|cut -d '"' -f 4)
25
+ curl -L $URL -o daemontools.exe
26
+
27
+ #curl -L http://disc-tools.com/request?p=70e5b112a42060a5439c5edec8e4f8c3/DTLite4402-0131.exe -o daemontools.exe
28
+ chmod +x daemontools.exe
29
+
30
+ # Silent install Daemontools
31
+ # http://www.daemon-help.com/en/installation_notes_lite/installation_lite.html
32
+ # Silent install - http://forum.daemon-tools.cc/f24/dt-4-08-a-15030/
33
+ ./daemontools.exe /S
34
+
35
+ # Download Virtualbox Additions
36
+ VBOX_VERSION="4.1.6"
37
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
38
+
39
+ # Mount iso file
40
+ # http://www.daemon-help.com/en/windows_integration_lite/command_line_parameters.html
41
+ # /cygdrive/c/Program Files (x86)/DAEMON Tools Pro
42
+ cd "/cygdrive/c/Program Files (x86)/DAEMON Tools Lite"
43
+ ./DTLite.exe &
44
+ sleep 2
45
+ ./DTLite.exe -mount 0,"c:\cygwin\home\vagrant\VBoxGuestAdditions_4.1.6.iso"
46
+
47
+ # Mark Oracle as a trusted installer
48
+ #http://blogs.msdn.com/b/steverac/archive/2009/07/09/adding-certificates-to-the-local-certificates-store-and-setting-local-policy-using-a-command-line-system-center-updates-publisher-example.aspx
49
+
50
+ certutil -addstore -f "TrustedPublisher" a:oracle-cert.cer
51
+
52
+ # Install the Virtualbox Additions
53
+ cd /cygdrive/e
54
+ ./VBoxWindowsAdditions.exe /S
55
+
56
+ #http://www.msfn.org/board/topic/105277-howto-create-a-fully-up-to-date-xp-x64-dvd/
57
+
58
+ # Unmount ISO file
59
+ cd "/cygdrive/c/Program Files (x86)/DAEMON Tools Lite"
60
+ ./DTLite.exe -unmount 0
61
+
62
+ # Next step is get ruby working
63
+ # But thanks to opscode's work , that should not be an issue
64
+ # https://github.com/opscode/knife-windows/blob/master/lib/chef/knife/bootstrap/windows-shell.erb
65
+
66
+ #Installing ruby
67
+ cd /home/vagrant
68
+
69
+ # Ruby 1.9
70
+ #wget http://rubyforge.org/frs/download.php/74298/rubyinstaller-1.9.2-p180.exe -O rubyinstaller.exe
71
+ # Ruby 1.8
72
+ wget http://files.rubyforge.vm.bytemark.co.uk/rubyinstaller/rubyinstaller-1.8.7-p334.exe -O rubyinstaller.exe
73
+
74
+ chmod +x rubyinstaller.exe
75
+ ./rubyinstaller.exe /verysilent /dir="C:\ruby" /tasks="assocfiles,modpath" /SUPPRESSMSGBOXES
76
+
77
+ # Now add it to the path cmd, and cygwin path
78
+ # http://serverfault.com/questions/63017/how-do-i-modify-the-system-path-in-windows-2003-windows-2008-using-a-script
79
+ /cygdrive/c/Windows/System32/setx.exe PATH "c:\windows\system32;c:\ruby\bin" /M
80
+ export PATH=$PATH:/cygdrive/c/ruby/bin
81
+
82
+ # Install Ruby dev kit (native extensions)
83
+ mkdir /cygdrive/c/devkit
84
+ cd /cygdrive/c/devkit
85
+ wget --no-check-certificate http://github.com/downloads/oneclick/rubyinstaller/DevKit-tdm-32-4.5.1-20101214-1400-sfx.exe -O rubydevkit.exe
86
+ chmod +x rubydevkit.exe
87
+ ./rubydevkit -y
88
+ ruby dk.rb init
89
+ ruby dk.rb install
90
+
91
+ # Installing puppet
92
+ gem.bat install puppet --no-rdoc --no-ri --verbose
93
+ gem install sys-admin win32-process win32-dir win32-service win32-taskscheduler --no-rdoc --no-ri --verbose
94
+ # Installing chef required gems on windows
95
+ # For ruby 1.8
96
+ gem.bat install win32-open3 ruby-wmi windows-api windows-pr --no-rdoc --no-ri --verbose
97
+ # For ruby 1.9
98
+ #gem.bat install win32-open3 rdp-ruby-wmi windows-api windows-pr --no-rdoc --no-ri --verbose
99
+
100
+ # Install chef
101
+ gem.bat install ohai --no-rdoc --no-ri --verbose
102
+ gem.bat install chef --no-rdoc --no-ri --verbose
103
+
104
+ # Currently 1.9 ruby + chef 10 doesn't seem to be able to
105
+ #http://stackoverflow.com/questions/4819807/ohai-fails-to-determine-os-version-in-cygwin
106
+
107
+ #Making aliases
108
+ cat <<EOF > /home/vagrant/.bash_profile
109
+ alias chef-client="chef-client.bat"
110
+ alias gem="gem.bat"
111
+ alias ruby="ruby.exe"
112
+ alias puppet="puppet.bat"
113
+ alias ohai="ohai.bat"
114
+ alias irb="irb.bat"
115
+ alias facter="facter.bat"
116
+ EOF
117
+
118
+ # Reboot
119
+ # http://www.techrepublic.com/blog/datacenter/restart-windows-server-2003-from-the-command-line/245
120
+ shutdown.exe /r /t 0 /c "Vagrant initial reboot"
121
+
122
+ # Mounting a directory
123
+ #./net.exe use x: \\vboxsvr\veewee-validation
124
+