|
1 | | -param( |
2 | | -[string]$folder = 'c:\DevelopmentSuite' |
3 | | -) |
4 | | -echo '(1/6) Removing VirtualBox' |
5 | | -$vbox = Get-WmiObject Win32_Product | where {$_.Name -like '*VirtualBox*'} |
6 | | -msiexec /x $vbox.IdentifyingNumber /qb /norestart | Out-Null |
7 | | -echo 'DONE' |
8 | | - |
9 | | -echo '(2/6) Removing VirtualBox VMs folder' |
10 | | -Remove-Item -Recurse $env:USERPROFILE'\VirtualBox VMs' |
11 | | -echo 'DONE' |
| 1 | +# |
| 2 | +$folder = Split-Path -Parent -Path $MyInvocation.MyCommand.Definition |
| 3 | + |
| 4 | +$vboxInstalled = Test-Path $folder'\..\virtualbox' |
| 5 | +$vagrantInstalled = Test-Path $folder'\..\vagrant' |
| 6 | +$openjdkInstalled = Test-Path $folder'\..\jdk8' |
| 7 | + |
| 8 | +echo 'Uninstalling Red Hat Development Suite' |
| 9 | + |
| 10 | +if ( $vboxInstalled ) { |
| 11 | + echo 'Removing VirtualBox' |
| 12 | + $vbox = Get-WmiObject Win32_Product | where {$_.Name -like '*VirtualBox*'} |
| 13 | + msiexec /x $vbox.IdentifyingNumber /qb /norestart | Out-Null |
| 14 | + echo 'DONE' |
| 15 | + |
| 16 | + $vboxVmsExists = Test-Path $env:USERPROFILE'\VirtualBox VMs' |
| 17 | + if($vboxVmsExists) { |
| 18 | + echo 'Removing VirtualBox VMs folder' |
| 19 | + Remove-Item -Recurse $env:USERPROFILE'\VirtualBox VMs' |
| 20 | + echo 'DONE' |
| 21 | + } |
| 22 | +} |
12 | 23 |
|
13 | | -echo '(3/6) Removing vagrant.d folder' |
14 | | -Remove-Item -Recurse $env:USERPROFILE'\.vagrant.d' |
15 | | -echo 'DONE' |
| 24 | +if( $vagrantInstalled ) { |
| 25 | + echo 'Removing Vagrant' |
| 26 | + $vagrant = Get-WmiObject Win32_Product | where {$_.Name -like '*Vagrant*'} |
| 27 | + msiexec /x $vagrant.IdentifyingNumber /qb /norestart | Out-Null |
| 28 | + echo 'DONE' |
| 29 | + |
| 30 | + $vagrantDExists = Test-Path $env:USERPROFILE'\.vagrant.d' |
| 31 | + if($vagrantDExists){ |
| 32 | + echo 'Removing vagrant.d folder' |
| 33 | + Remove-Item -Recurse $env:USERPROFILE'\.vagrant.d' |
| 34 | + echo 'DONE' |
| 35 | + } |
| 36 | +} |
16 | 37 |
|
17 | | -echo '(4/6) Removing Vagrant' |
18 | | -$vagrant = Get-WmiObject Win32_Product | where {$_.Name -like '*Vagrant*'} |
19 | | -msiexec /x $vagrant.IdentifyingNumber /qb /norestart | Out-Null |
20 | | -echo 'DONE' |
| 38 | +if ( $openJdkInstalled ) { |
| 39 | + echo 'Removing Red Hat OpenJDK' |
| 40 | + $vbox = Get-WmiObject Win32_Product | where {$_.Name -like '*OpenJDK*'} |
| 41 | + msiexec /x $vbox.IdentifyingNumber /qb /norestart | Out-Null |
| 42 | + echo 'DONE' |
| 43 | +} |
21 | 44 |
|
22 | | -echo '(5/6) Removing the DevelopmentSuite installation folder' |
23 | | -Cmd /C "rmdir /S /Q $folder" | Out-Null |
| 45 | +echo 'Removing installation folder' |
| 46 | +Cmd /C "rmdir /S /Q $folder\.." | Out-Null |
24 | 47 | echo 'DONE' |
25 | 48 |
|
26 | | -echo '(6/6) Removing path entries' |
| 49 | +echo 'Removing path entries' |
27 | 50 | [string[]] $pathFolders = [Environment]::GetEnvironmentVariable("Path", "User") -Split ';' |
28 | 51 | [Collections.ArrayList] $folderList = New-Object Collections.Arraylist |
29 | 52 |
|
30 | 53 | $pathFolders | foreach { |
31 | 54 | If (-Not ($_ -like "$folder*")) { |
32 | | - $folderList.Add($_) | Out-Null |
| 55 | + $folderList.Add($_) | Out-Null |
33 | 56 | } |
34 | 57 | } |
35 | 58 |
|
|
0 commit comments