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,8 @@
1
+ require 'winrm'
2
+ endpoint = 'http://localhost:5985/wsman'
3
+ winrm=WinRM::WinRMWebService.new(endpoint, :plaintext, :user => 'Administrator', :pass => 'vagrant', :basic_auth_only => true)
4
+ winrm.cmd('ifconfig /all') do |stdout, stderr|
5
+ STDOUT.print stdout
6
+ STDERR.print stderr
7
+ end
8
+ #winrm.open_shell
@@ -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-cygwin-sshd.bat</CommandLine>
47
+ <Description>Install Cygwin sshd</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 PROFESSIONAL</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 PROFESSIONAL" 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,41 @@
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
+ "oracle-cert.cer",
19
+ "install-cygwin-sshd.bat"
20
+ ],
21
+
22
+
23
+ :boot_wait => "720", #12 minutes.. should be long enough
24
+ # this is waiting for the screene where we could put in our product key
25
+ # this is the command sequence to bybass it and to not try to register once online
26
+ :boot_cmd_sequence => [
27
+ '<Tab><Spacebar><Tab><Tab><Tab><Spacebar>'
28
+ ],
29
+
30
+ :ssh_login_timeout => "10000",
31
+ # Actively attempt to winrm (no ssh on base windows) in for 10000 seconds
32
+ :ssh_user => "vagrant", :ssh_password => "vagrant", :ssh_key => "",
33
+ :ssh_host_port => "59957", :ssh_guest_port => "22",
34
+ # And run postinstall.sh for up to 10000 seconds
35
+ :postinstall_timeout => "10000",
36
+ :postinstall_files => ["postinstall.sh"],
37
+ # No sudo on windows
38
+ :sudo_cmd => "sh '%f'",
39
+ # Shutdown is different as well
40
+ :shutdown_cmd => "shutdown /p /t 60 /c \"Vagrant Shutdown\" /f /d p:4:1",
41
+ })
@@ -0,0 +1,40 @@
1
+ REM http://webcache.googleusercontent.com/search?q=cache:SjoPPpuQxuoJ:www.tcm.phy.cam.ac.uk/~mr349/cygwin_install.html+install+cygwin+ssh+commandline&cd=2&hl=nl&ct=clnk&gl=be&source=www.google.be
2
+
3
+ REM create the cygwin directory
4
+ cmd /c mkdir %SystemDrive%\cygwin
5
+
6
+ cmd /c bitsadmin /transfer CygwinSetupExe /download /priority normal http://www.cygwin.com/setup.exe %SystemDrive%\cygwin\cygwin-setup.exe
7
+
8
+ REM goto a temp directory
9
+ cd %SystemDrive%\windows\temp
10
+
11
+ REM run the installation
12
+ cmd /c %SystemDrive%\cygwin\cygwin-setup.exe -q -R %SystemDrive%\cygwin -P openssh,openssl,curl,cygrunsrv,wget,rebase,vim -s http://cygwin.mirrors.pair.com
13
+
14
+ %SystemDrive%\cygwin\bin\bash -c 'PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin cygrunsrv -R sshd'
15
+
16
+ REM /bin/ash is the right shell for this command
17
+ cmd /c %SystemDrive%\cygwin\bin\ash -c /bin/rebaseall
18
+
19
+ cmd /c %SystemDrive%\cygwin\bin\bash -c 'PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin mkgroup -l'>%SystemDrive%\cygwin\etc\group
20
+
21
+ cmd /c %SystemDrive%\cygwin\bin\bash -c 'PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin mkpasswd -l'>%SystemDrive%\cygwin\etc\passwd
22
+
23
+ %SystemDrive%\cygwin\usr\bin\sleep 1
24
+
25
+ %SystemDrive%\cygwin\bin\bash -c 'PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin /usr/bin/ssh-host-config -y -c "ntsecbinmode tty" -w "abc&&123!!" '
26
+
27
+ %SystemDrive%\cygwin\usr\bin\sleep 2
28
+
29
+ cmd /c if exist %Systemroot%\system32\netsh.exe netsh advfirewall firewall add rule name="SSHD" dir=in action=allow program="c:\cygwin\usr\sbin\sshd.exe" SSHD enable=yes
30
+
31
+ cmd /c if exist %Systemroot%\system32\netsh.exe netsh advfirewall firewall add rule name="ssh" dir=in action=allow protocol=TCP localport=22
32
+
33
+ %SystemDrive%\cygwin\usr\bin\sleep 2
34
+
35
+ net start sshd
36
+
37
+ # Fix corrupt recycle bin
38
+ # http://www.winhelponline.com/blog/fix-corrupted-recycle-bin-windows-7-vista/
39
+ cmd /c rd /s /q c:\$Recycle.bin
40
+
@@ -0,0 +1,14 @@
1
+ cmd /c winrm quickconfig -q
2
+ cmd /c winrm quickconfig -transport:http # needs to be auto no questions asked
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
12
+
13
+ cmd /c reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveActive /t REG_SZ /d 0 /f
14
+ cmd /c reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /v ScreenSaveIsSecure /t REG_SZ /d 0 /f
@@ -0,0 +1,74 @@
1
+ set -x
2
+
3
+ # Create the home directory
4
+ mkdir -p /home/vagrant
5
+ chown vagrant /home/vagrant
6
+ cd /home/vagrant
7
+
8
+ # Install ssh certificates
9
+ mkdir /home/vagrant/.ssh
10
+ chmod 700 /home/vagrant/.ssh
11
+ cd /home/vagrant/.ssh
12
+ wget --no-check-certificate 'https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub' -O authorized_keys
13
+ chown -R vagrant /home/vagrant/.ssh
14
+ cd ..
15
+
16
+ # Install rpm,apt-get like code for cygwin
17
+ # http://superuser.com/questions/40545/upgrading-and-installing-packages-through-the-cygwin-command-line
18
+ wget http://apt-cyg.googlecode.com/svn/trunk/apt-cyg
19
+ chmod +x apt-cyg
20
+ mv apt-cyg /usr/local/bin/
21
+
22
+ # 7zip will allow us to extract a file from an ISO
23
+ wget http://downloads.sourceforge.net/sevenzip/7z922-x64.msi
24
+ msiexec /qb /i 7z922-x64.msi
25
+
26
+ # Download Virtualbox Additions
27
+ VBOX_VERSION="4.1.8" #"4.0.8"
28
+ wget http://download.virtualbox.org/virtualbox/$VBOX_VERSION/VBoxGuestAdditions_$VBOX_VERSION.iso
29
+
30
+ # Extract the installer from the ISO (WHY WHY WHY isn't this available not bundled within an ISO)
31
+ /cygdrive/c/Program\ Files/7-Zip/7z.exe x VBoxGuestAdditions_$VBOX_VERSION.iso VBoxWindowsAdditions-amd64.exe
32
+
33
+ # Mark Oracle as a trusted installer
34
+ #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
35
+
36
+ certutil -addstore -f "TrustedPublisher" a:oracle-cert.cer
37
+
38
+ # Install the Virtualbox Additions
39
+ ./VBoxWindowsAdditions-amd64.exe /S
40
+
41
+
42
+ #Rather than do the manual install of ruby and chef, just use the opscode msi
43
+ curl -L http://www.opscode.com/chef/install.msi -o chef-client-latest.msi
44
+ msiexec /qb /i chef-client-latest.msi
45
+
46
+
47
+ #http://www.msfn.org/board/topic/105277-howto-create-a-fully-up-to-date-xp-x64-dvd/
48
+
49
+ #Making aliases
50
+ cat <<EOF > /home/vagrant/.bash_profile
51
+ alias chef-client="chef-client.bat"
52
+ alias gem="gem.bat"
53
+ alias ruby="ruby.exe"
54
+ alias puppet="puppet.bat"
55
+ alias ohai="ohai.bat"
56
+ alias irb="irb.bat"
57
+ alias facter="facter.bat"
58
+ EOF
59
+
60
+
61
+ cat <<'EOF' > /bin/sudo
62
+ #!/usr/bin/bash
63
+ exec "$@"
64
+ EOF
65
+ chmod 755 /bin/sudo
66
+
67
+ # Mounting a directory
68
+ net.exe use '\\vboxsvr\veewee-validation'
69
+
70
+
71
+ # Reboot
72
+ # http://www.techrepublic.com/blog/datacenter/restart-windows-server-2003-from-the-command-line/245
73
+ shutdown.exe /s /t 0 /d p:2:4 /c "Vagrant initial reboot"
74
+