Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Note

The Azure PowerShell module has a bug in the Az.Accounts module and cannot sign in correctly. This step should only be completed in the prod (AUSTIN) domain.

Run the following

...

commands to

...

verify the NuGet provider is installed:

Code Block
languagepowershell
Update-AzConfig
Find-PackageProvider -Name 'NuGet' -
EnableLoginByWam
Force 
$false
-ForceBootstrap

Run the code blocks in one of the following sections commands to update or install the latest version of the Azure PowerShell modules from the PSGallery: 

  • Update modules:

...

Info

This will perform the following actions for each PowerShell module:

  • Remove the modules from the current session if loaded

  • Update the module if installed and install the module if not

...

trust the PSGallery:

Code Block
languagepowershell
$Modules, $BaseModule = (Get-Module
Set-PSRepository -Name '
Az.*').Where({$_.Name
PSGallery' -
ne 'Az.Accounts'},[System.Management.Automation.WhereOperatorSelectionMode]::Split)

Unload Azure PowerShell modules respecting dependency on Az.Accounts

Code Block
languagepowershell
$Modules | ForEach-Object { Remove-Module -Name $_.Name -Force }; $BaseModule | ForEach-Object { Remove-Module -Name $_.Name -Force }
Update Azure PowerShell modules
InstallationPolicy Trusted

Run the following commands to define the names of the Azure PowerShell module collection and of any modules that are a dependency for other modules the collection:

Code Block
languagepowershell
Get-Module -ListAvailable -Name Az.* | ForEach-Object { Update-Module -Name $_.Name } 
  • Reinstall modules 

Expand
Info

This will perform the following actions for each PowerShell module:

  • Remove the modules from the current session if loaded

  • Remove the module files from the AllUsers scope

  • Install the modules from the PowerShell gallery

Define Azure PowerShell modules respecting dependency on Az.Accounts
$PowerShellModuleName = 'Az'
$DependsOnModuleNames = 'Az.Accounts'

Run the following commands to split the Azure PowerShell modules respecting the module dependencies:

Code Block
languagepowershell
$Modules, 
$BaseModule
$Dependencies = (Get-Module -Name 
'Az
"$PowerShellModuleName.*
'
").Where({$_.Name -
ne 'Az.Accounts'
notin $DependsOnModuleNames},[System.Management.Automation.WhereOperatorSelectionMode]::Split)
Unload

Run the following commands to unload the Azure PowerShell modules respecting

...

the module dependencies:

Code Block
languagepowershell
$Modules | ForEach-Object { Remove-Module -Name $_.Name -Force -Verbose }; 
$BaseModule
$Dependencies | ForEach-Object { Remove-Module -Name $_.Name -Force -Verbose }
Remove

Run the following commands to remove the Azure PowerShell modules currently installed:

Code Block
languagepowershell
Get-ChildItem -Path "$env:ProgramFiles\WindowsPowerShell\Modules" -Filter 
'Az.*'
"$PowerShellModuleName*" | Remove-Item -Force -Recurse -
ForceInstall
Verbose

Run the following commands to install the latest version of the Azure PowerShell modules from the PSGallery: 

Code Block
languagepowershell
Save-Module -Path "$env:ProgramFiles\WindowsPowerShell\Modules" -Name $PowerShellModuleName -Force -Verbose
Note

There is a bug in version 3.0.0 of the Az

-Force

.Accounts module that prevents sign in to Azure via the Web Account Manager (WAM) on Windows.

Run the following commands to disable the login via WAM functionality:

Code Block
languagepowershell
Update-AzConfig -EnableLoginByWam $false