0

PowerShell タイプの Azure Runbook 内で Az コマンドを実行しようとしています。起動時に Az コマンドを認識せず、NuGet をインストールするよう求められます。NuGet のインストール中にエラーが表示されるようになりました。

#Set strong cryptography on 64 bit .Net Framework (version 4 and above)
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord

#Set strong cryptography on 32 bit .Net Framework (version 4 and above)
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -Name 'SchUseStrongCrypto' -Value '1' -Type DWord 

#Install NuGet
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force

#Uninstall AzureRm
Uninstall-AzureRm

#Install Module
Install-Module -Name Az.Accounts -Force
Install-Module -Name Az.Resources -Force

#Import Module
Import-Module -Name Az.Accounts -Force
Import-Module -Name Az.Resources -Force

#Connect to your Azure Account
$Account = Connect-AzAccount -Credential $Cred

Get-AzResource -ResourceGroupName "test"

エラー

Install-PackageProvider : No match was found for the specified search criteria for the provider 'NuGet'. The package provider requires 'PackageManagement' and 'Provider' tags. Please check if the specified package has the tags. At line:17 char:1 + Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (Microsoft.Power...PackageProvider:InstallPackageProvider) [Install-PackageProvider], Exception + FullyQualifiedErrorId : NoMatchFoundForProvider,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackageProvider

複数のエラー ここに画像の説明を入力

Connect-AzAccountは正常に実行されているが、Get-AzResourceがエラーをスローしていることに気付いた場合。

  1. NuGet をインストールする必要はありますか?
  2. Connect-AzAccountがエラーをスローしない方法。
  3. Uninstall-AzureRmが失敗しますが、使用しないと別のエラーがスローされます。

    Get-ChildItem : AzureRM.Profile は既に読み込まれています。Az および AzureRM モジュールを同じセッションにインポートしたり、同じスクリプトまたは Runbook で使用したりすることはできません。

  4. Get-AzResourceをインポートするには、他のモジュールが必要ですか?

  5. 私のローカルマシンでは問題ありません。Runbook のみに問題があります。
4

1 に答える 1