I need the AWS module, which is available in PS-Gallery, but when I try to run the installation step inside Azure Function , it does not work. The -verbose argument flag does not write anything to the console.
What is the correct way to get and use additional PowerShell modules in Azure function?
Function code
[Console]::WriteLine("PowerShell Timer trigger function executed at:$(get-date)"); if (-not (Get-Module -Name "AWSPowerShell")) { [Console]::WriteLine("AWSPowerShell not installed"); Install-Module -Name AWSPowerShell -Scope CurrentUser -ErrorAction Continue -Verbose } if (-not (Get-Module -Name "AWSPowerShell")){ [Console]::WriteLine("AWSPowerShell install step failed"); }
Function Log
2016-06-09T11:24:31.108 Function started (Id=e09be687-2e13-4754-942e-eab75c8516e5) 2016-06-09T11:24:32.788 Powershell Timer trigger function executed at:06/09/2016 11:24:32 AWSPowerShell not installed AWSPowerShell install step failed 2016-06-09T11:24:32.788 Function completed (Success, Id=e09be687-2e13-4754-942e-eab75c8516e5)
Update
In response to @travis, I added suggested code, including the nuget package manager string. It still didn't work. I added another debug line and found that there were no module providers, even after trying to add nuget!
Revised code
[Console]::WriteLine("Powershell Timer trigger function executed at:$(get-date)"); Get-PackageProvider -Name nuget -ForceBootstrap $pkg=Get-PackageProvider -ListAvailable if ($pkg.Count -lt 1){ [Console]::WriteLine("No providers")} if (-not (Get-Module -listavailable -Name "AWSPowerShell")) { [Console]::WriteLine("AWSPowerShell not installed"); Install-Module -Name AWSPowerShell -Scope CurrentUser -ErrorAction Continue -Verbose -force } if (-not (Get-Module -listavailable -Name "AWSPowerShell")){ [Console]::WriteLine("AWSPowerShell install step failed"); } Import-Module AWSPowerShell
Revised magazine
2016-06-09T17:54:03.859 Powershell Timer trigger function executed at:06/09/2016 17:54:02 No providers AWSPowerShell not installed AWSPowerShell install step failed 2016-06-09T17:54:03.859 Function completed (Success, Id=80efb9fc-5e91-45f9-ab58-3b71fcd764af)
source share