@@ -146,10 +146,10 @@ function Import-AzureRM
146
146
147
147
$AzureRMModules | ForEach {
148
148
$moduleName = $_
149
- $matchedModule = Get-InstalledModule - Name $moduleName - MinimumVersion $_MinVer - MaximumVersion $_MaxVer - ErrorAction Ignore | where {$_.Name -eq $moduleName }
150
- if ($matchedModule -ne $null ) {
149
+ $_MatchedModule = Get-InstalledModule - Name $moduleName - MinimumVersion $_MinVer - MaximumVersion $_MaxVer - ErrorAction Ignore | where {$_.Name -eq $moduleName }
150
+ if ($_MatchedModule -ne $null ) {
151
151
try {
152
- Import-Module - Name $matchedModule .Name - RequiredVersion $matchedModule .Version - ErrorAction Stop
152
+ Import-Module - Name $_MatchedModule .Name - RequiredVersion $_MatchedModule .Version - ErrorAction Stop
153
153
Write-Output " $moduleName imported..."
154
154
} catch {
155
155
Write-Warning " Skipping $Name module..."
@@ -164,12 +164,15 @@ function Uninstall-ModuleWithVersionCheck([string]$Name,[string]$MajorVersion)
164
164
$_MinVer = " $MajorVersion .0.0.0"
165
165
$_MaxVer = " $MajorVersion .9999.9999.9999"
166
166
# This is a workaround for a bug in PowerShellGet that uses "start with" matching for module name
167
- $matchedModule = Get-InstalledModule - Name $Name - MinimumVersion $_MinVer - MaximumVersion $_MaxVer - ErrorAction Ignore | where {$_.Name -eq $Name }
168
- if ($matchedModule -ne $null ) {
167
+ $_MatchedModule = Get-InstalledModule - Name $Name - MinimumVersion $_MinVer - MaximumVersion $_MaxVer - ErrorAction Ignore | where {$_.Name -eq $Name }
168
+ if ($_MatchedModule -ne $null ) {
169
169
try {
170
- Remove-Module - Name $matchedModule.Name - Force - ErrorAction Ignore
171
- Uninstall-Module - Name $matchedModule.Name - RequiredVersion $matchedModule.Version - Confirm:$false - ErrorAction Stop
172
- Write-Output " $Name uninstalled..."
170
+ Remove-Module - Name $_MatchedModule.Name - Force - ErrorAction Ignore
171
+ Uninstall-Module - Name $_MatchedModule.Name - RequiredVersion $_MatchedModule.Version - Confirm:$false - ErrorAction Stop
172
+ if ((Get-Module - Name $_MatchedModule.Name | where {$_.Version -eq $_MatchedModule.Version }) -eq $null )
173
+ {
174
+ Write-Output " $Name version $ ( $_MatchedModule.Version ) uninstalled..."
175
+ }
173
176
} catch {
174
177
Write-Warning " Skipping $Name package..."
175
178
Write-Warning $_
@@ -203,6 +206,7 @@ function Uninstall-AzureRM
203
206
Uninstall-ModuleWithVersionCheck $_ $MajorVersion
204
207
}
205
208
209
+ Uninstall-ModuleWithVersionCheck " Azure.Storage" $MajorVersion
206
210
Uninstall-ModuleWithVersionCheck " AzureRM.Profile" $MajorVersion
207
211
}
208
212
0 commit comments