Powershell - Почему загрузка этого модуля из Галереи происходит на сервере? - PullRequest
1 голос
/ 06 апреля 2020

Серверная ОС: Windows Сервер 2016 Datacenter, сборка 14393
Версия Powershell: 5.1

Я могу запустить приведенный ниже код для установки модуля на свой ноутбук, но он начал давать сбой при загрузке на сервер несколько дней go (он работал пару недель назад в конвейере CI / CD).

Install-Module -Name 'AzureDevOpsHelpers' -Scope CurrentUser -Force

На сервере я получаю предупреждение и ошибку ниже

WARNING: Source Location 'https://www.powershellgallery.com/api/v2/package/AzureDevOpsHelpers/1.1.12' is not valid.

PackageManagement\Install-Package : Package 'AzureDevOpsHelpers' failed to download.

Однако на этом же сервере я могу вручную загрузить пакет через браузер, используя предположительно неверный URL-адрес выше.

Я нашел это обсуждение на Powershell.org, но не думаю, что это модуль очень большой: https://powershell.org/forums/topic/failed-to-downloadinstall-module/

Я бы хотел использовать Install-Package для установки пакета. Могу ли я что-нибудь сделать, кроме как надеяться, что это снова заработает?

Ответы [ 2 ]

2 голосов
/ 06 апреля 2020

Если я выполню это в сеансе до команды Install-Module, все будет работать как положено.

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
2 голосов
/ 06 апреля 2020

Вот что вы можете попробовать:

$path = "$($env:PSModulePath.Split(';')[0])\AzureDevOpsHelpers"
if(!(Test-Path $path)){
    New-Item -Path $path -ItemType Directory | Out-Null
}
$file = "$path\package.zip"
Invoke-WebRequest 'https://www.powershellgallery.com/api/v2/package/AzureDevOpsHelpers/1.1.12' -OutFile $file -TimeoutSec 0
Expand-Archive -Path $file -DestinationPath $path -Force
Import-Module AzureDevOpsHelpers

Результаты:

PS C:\WINDOWS\system32> W:\Code\Scripts\Powershell\ps1\PowerShell - Course\Solutions\StackTest3.ps1

PS C:\WINDOWS\system32> Get-Module -ListAvailable


    Directory: $env:PSModulePath\Modules


ModuleType Version    Name                                ExportedCommands                                                                                                      
---------- -------    ----                                ----------------                                                                                                      
Script     1.1.12     AzureDevOpsHelpers                  {RemoveOldCerts, _uninstallService, UpdateXmlConfigAppConnectionStringInitialCatalog, ConfigureSslForPortOnHost...}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...