vhdbuilder/scripts/windows/generate_cached_stuff_list.ps1 (54 lines of code) (raw):

param( [string] $outputDirParam, [string] $helpersFileParam, [string] $windowsSettingsFileParam, [string] $componentsJsonFileParam ) $HelpersFile = "vhdbuilder/packer/windows/components_json_helpers.ps1" $WindowsSettingsFile = "vhdbuilder/packer/windows/windows_settings.json" $ComponentsJsonFile = "parts/common/components.json" $outputDir = "temp" if (![string]::IsNullOrEmpty($outputDirParam)) { Write-Output "Setting output dir to to to $outputDirParam" $outputDir = $outputDirParam } else { Write-Output "using default output dir: $outputDir" } if (![string]::IsNullOrEmpty($helpersFileParam)) { Write-Output "Setting helpers file to $helpersFileParam" $HelpersFile = $helpersFileParam } else { Write-Output "using default helpers file: $HelpersFile" } if (![string]::IsNullOrEmpty($windowsSettingsFileParam)) { Write-Output "Setting windows settings file to $windowsSettingsFileParam" $WindowsSettingsFile = $windowsSettingsFileParam } else { Write-Output "using default windows settings: $WindowsSettingsFile" } if (![string]::IsNullOrEmpty($componentsJsonFileParam)) { Write-Output "Setting components json file to to $componentsJsonFileParam" $ComponentsJsonFile = $componentsJsonFileParam } else { Write-Output "using default components json: $ComponentsJsonFile" } . "$HelpersFile" $componentsJson = Get-Content $ComponentsJsonFile | Out-String | ConvertFrom-Json $windowsSettingsJson = Get-Content $WindowsSettingsFile | Out-String | ConvertFrom-Json $BaseVersions = GetWindowsBaseVersions $windowsSettingsJson foreach ($WindowsSku in $BaseVersions) { $cachedThings = GetAllCachedThings $componentsJson $windowsSettingsJson $fileName = "${outputDir}/${WindowsSku}.txt" Write-Output "Creating file $fileName" Write-Output $WindowsSku > $fileName echo $cachedThings | ConvertTo-Json | Write-Output >> $fileName }