This is an automated email from the ASF dual-hosted git repository.

bbender pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode-native.git


The following commit(s) were added to refs/heads/develop by this push:
     new 73687f3  GEODE-3036: Make script safe to run multiple times
73687f3 is described below

commit 73687f33f8fb5eab6bd64fb40543efee6ed60547
Author: Blake Bender <[email protected]>
AuthorDate: Wed Nov 21 21:15:01 2018 +0000

    GEODE-3036: Make script safe to run multiple times
    
    Co-authored-by: Ernest Burghardt <[email protected]>
---
 packer/windows/setup-ec2config.ps1 | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/packer/windows/setup-ec2config.ps1 
b/packer/windows/setup-ec2config.ps1
index 7ce7cdb..028b31c 100644
--- a/packer/windows/setup-ec2config.ps1
+++ b/packer/windows/setup-ec2config.ps1
@@ -21,9 +21,12 @@ $ec2config = [xml] (get-content 'C:\Program 
Files\Amazon\Ec2ConfigService\Settin
 ($ec2config.ec2configurationsettings.plugins.plugin | where {$_.name -eq 
"Ec2EventLog"}).state = "Enabled"
 $ec2config.save("C:\Program Files\Amazon\Ec2ConfigService\Settings\config.xml")
 $ec2DiskConfig = [xml] (get-content 'C:\Program 
Files\Amazon\Ec2ConfigService\Settings\DriveLetterConfig.xml')
-$mappingElement = 
$ec2DiskConfig.SelectNodes("DriveLetterMapping")[0].AppendChild($ec2DiskConfig.CreateElement("Mapping"))
-$volumeNameElement = 
$mappingElement.AppendChild($ec2DiskConfig.CreateElement("VolumeName"))
-$volumeName = 
$volumeNameElement.AppendChild($ec2DiskConfig.CreateTextNode("Temporary Storage 
0"))
-$driveLetterElement = 
$mappingElement.AppendChild($ec2DiskConfig.CreateElement("DriveLetter"))
-$driveLetter = 
$driveLetterElement.AppendChild($ec2DiskConfig.CreateTextNode("D:"))
-$ec2DiskConfig.save("C:\Program 
Files\Amazon\Ec2ConfigService\Settings\DriveLetterConfig.xml")
+$mappingElement = $ec2DiskConfig.SelectNodes("DriveLetterMapping")[0].Mapping;
+if (!$mappingElement) {
+       $mappingElement = 
$ec2DiskConfig.SelectNodes("DriveLetterMapping")[0].AppendChild($ec2DiskConfig.CreateElement("Mapping"))
+       $volumeNameElement = 
$mappingElement.AppendChild($ec2DiskConfig.CreateElement("VolumeName"))
+       $volumeName = 
$volumeNameElement.AppendChild($ec2DiskConfig.CreateTextNode("Temporary Storage 
0"))
+       $driveLetterElement = 
$mappingElement.AppendChild($ec2DiskConfig.CreateElement("DriveLetter"))
+       $driveLetter = 
$driveLetterElement.AppendChild($ec2DiskConfig.CreateTextNode("D:"))
+       $ec2DiskConfig.save("C:\Program 
Files\Amazon\Ec2ConfigService\Settings\DriveLetterConfig.xml")
+}
\ No newline at end of file

Reply via email to