Improve partition script
This commit is contained in:
parent
b7f7a53b67
commit
cda0a62bf0
1 changed files with 12 additions and 1 deletions
|
@ -9,6 +9,14 @@ function Initialize-SetupConfig() {
|
|||
);
|
||||
|
||||
New-Module {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Gets the XML element describing the installation partition ID.
|
||||
#>
|
||||
Get-InstallationPartition {
|
||||
$setupComponent.SelectSingleNode("./ua:ImageInstall/ua:OSImage/ua:InstallTo/ua:PartitionID", $namespace)
|
||||
}
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Increases the ID of all partitions in the specified range by 1.
|
||||
|
@ -20,12 +28,15 @@ function Initialize-SetupConfig() {
|
|||
[int]$By = 1
|
||||
)
|
||||
|
||||
# Update installation partition ID if necessary
|
||||
$installationPartition = Get-InstallationPartition;
|
||||
$installPartitionID = [int]$installationPartition.InnerText;
|
||||
|
||||
if (($installPartitionID -ge $From) -and (($null -eq $To) -or ($installPartitionID -lt $To))) {
|
||||
$installationPartition.InnerText = "$($installPartitionID + $By)";
|
||||
}
|
||||
|
||||
# Update IDs of all partition creations
|
||||
foreach ($partition in $partitionCreations) {
|
||||
$orderNode = $partition.SelectSingleNode("./ua:Order", $namespace);
|
||||
$order = [int]$orderNode.InnerText;
|
||||
|
@ -40,6 +51,7 @@ function Initialize-SetupConfig() {
|
|||
}
|
||||
}
|
||||
|
||||
# Update IDs of all partition modifications
|
||||
foreach ($partition in $partitionModifications) {
|
||||
$partitionNode = $partition.SelectSingleNode("./ua:PartitionID", $namespace);
|
||||
$partitionID = [int]$partitionNode.InnerText;
|
||||
|
@ -105,7 +117,6 @@ function Initialize-SetupConfig() {
|
|||
$namespace);
|
||||
|
||||
$diskConfig = $setupComponent.SelectSingleNode("./ua:DiskConfiguration/ua:Disk", $namespace);
|
||||
$installationPartition = $setupComponent.SelectSingleNode("./ua:ImageInstall/ua:OSImage/ua:InstallTo/ua:PartitionID", $namespace);
|
||||
|
||||
$partitionCreationContainer = $diskConfig.SelectSingleNode("./ua:CreatePartitions", $namespace);
|
||||
$partitionCreations = $partitionCreationContainer.SelectNodes("./ua:CreatePartition", $namespace);
|
||||
|
|
Loading…
Reference in a new issue