If you are having trouble getting from the ‘old’ AzureRM PowerShell commends to the ‘new’ Az…
The following script solves it for you, run it and you will end up having the ‘new’ Az module installed (New-AzVM etc.) and if you had a conflicting AzureRM installed, that is resolved for you, by itself!
Run it a PowerShell tool of choice, prompt from script, ISE or VS Code. But run the tool as Administrator, the operation requires elevated mode.
# This script needs to be run in an elevated PowerShell, prompt, ISE or VSCode # Written by Thomas Odell Balkeståhl - www.candelit.se Write-Host "Starting AZ Module installer" -ForegroundColor Green if ((New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { Write-host "Running in elevated mode - Ok'" -ForegroundColor Green if ($PSVersionTable.PSEdition -eq 'Desktop' -and (Get-InstalledModule -ErrorAction Ignore -WarningAction Ignore -Name 'azureRM')) { Write-Warning -Message ('AzureRM module is installed. Having both the AzureRM and ' + 'Az modules installed at the same time is not supported.') Write-host "Would you like to uninstall the AzureRM module now? (Default is Yes)" -ForegroundColor Yellow $Readhost = Read-Host " ( y / n ) " Switch ($ReadHost) { Y {Write-host "Yes, Uninstalling AzureRM"; $UninstallSetting=$true} N {Write-Host "No, Skip uninstall..."; $UninstallSetting=$false} Default {Write-Host "Default, Uninstalling AzureRM"; $UninstallSetting=$true} } If ($UninstallSetting){ Uninstall-Module AzureRM -Force Write-Host "AzureRM module uninstalled" Write-Host "Next, Installing Az Module" try { Install-Module -Name Az -AllowClobber -SkipPublisherCheck Get-InstalledModule -Name Az -AllVersions Write-Host "Az Module installed!" -ForegroundColor Green } catch { Write-Host "Something went wrong, try running the command 'Install-Module -Name Az -AllowClobber' manually to see what went wrong" -ForegroundColor Yellow } } } else { if (!(Get-InstalledModule -Name Az -AllVersions -ErrorAction Ignore)){ Write-Host "Az Module missing, Installing" try { Install-Module -Name Az -AllowClobber -SkipPublisherCheck Get-InstalledModule -Name Az -AllVersions Write-Host "Az Module installed!" -ForegroundColor Green } catch { Write-Host "Something went wrong, try running the command 'Install-Module -Name Az -AllowClobber' manually to see what went wrong" -ForegroundColor Yellow } } else { Get-InstalledModule -Name Az -AllVersions Write-Host "Az Module is installed" -ForegroundColor Green } } } else{ Write-host "You have to run the script in elevated mode - 'run as admin'" -ForegroundColor Yellow }
Happy PowerShell scripting!
References
https://docs.microsoft.com/en-us/powershell/azure/install-az-ps
___________________________________________________________________________________________________
Enjoy!
Regards
One thought on “Install the PowerShell Az module (even if AzureRM is installed)”